{
"openapi": "3.0.0",
"info": {
"title": "Catalog API",
"description": "\r\n> Check the new [Catalog onboarding guide](https://developers.vtex.com/docs/guides/catalog-overview). We created this guide to improve the onboarding experience for developers at VTEX. It assembles all documentation on our Developer Portal about Catalog and is organized by focusing on the developer's journey.\r\n\r\nThe Catalog API is a crucial part of the VTEX ecommerce platform, empowering developers to seamlessly manage product information. It enables the creation, modification, and deletion of product details, including attributes like images and specifications. SKU management covers product variations. The Catalog API also supports organizing products into categories and managing brands. \r\n\r\n## Index\r\n\r\n### Category\r\n\r\n* `GET` [Get category tree](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pub/category/tree/-categoryLevels-)\r\n* `GET` [Get category by ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/category/-categoryId-)\r\n* `PUT` [Update category](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/category/-categoryId-)\r\n* `POST` [Create category](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/category)\r\n\r\n### Category specification\r\n\r\n* `GET` [Get specifications By category ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pub/specification/field/listByCategoryId/-categoryId-)\r\n* `GET` [Get specifications tree By category ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pub/specification/field/listTreeByCategoryId/-categoryId-)\r\n\r\n### Brand\r\n\r\n* `GET` [Get brand List](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/brand/list)\r\n* `GET` [Get brand List Per Page](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/brand/pagedlist)\r\n* `GET` [Get brand](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/brand/-brandId-)\r\n* `POST` [Create brand](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/brand)\r\n* `GET` [Get brand and context](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/brand/-brandId-)\r\n* `PUT` [Update brand](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/brand/-brandId-)\r\n* `DELETE` [Delete brand](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/brand/-brandId-)\r\n\r\n### Specification group\r\n\r\n* `GET` [List specification Group by category](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/specification/groupbycategory/-categoryId-)\r\n* `GET` [Get specification Group](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pub/specification/groupGet/-groupId-)\r\n* `POST` [Create specification Group](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/specificationgroup)\r\n* `PUT` [Update specification Group](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/specificationgroup/-groupId-)\r\n\r\n### Specification\r\n\r\n* `GET` [Get specification](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/specification/-specificationId-)\r\n* `PUT` [Update specification](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/specification/-specificationId-)\r\n* `POST` [Create specification](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/specification)\r\n\r\n### Specification Field\r\n\r\n* `GET` [Get specification Field](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pub/specification/fieldGet/-fieldId-)\r\n* `POST` [Create specification Field](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog_system/pvt/specification/field)\r\n* `PUT` [Update specification Field](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog_system/pvt/specification/field)\r\n\r\n### Non-structured specification\r\n\r\n* `GET` [Get non-structured specification by ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/specification/nonstructured/-Id-)\r\n* `DELETE` [Delete non-structured specification](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/specification/nonstructured/-Id-)\r\n* `GET` [Get non-structured specification by SKU ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/specification/nonstructured)\r\n* `DELETE` [Delete non-structured specification by SKU ID](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/specification/nonstructured)\r\n\r\n### Specification value\r\n\r\n* `GET` [Get specification value](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/specificationvalue/-specificationValueId-)\r\n* `PUT` [Update specification value](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/specificationvalue/-specificationValueId-)\r\n* `POST` [Create specification value](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/specificationvalue)\r\n\r\n### Specification Field Value\r\n\r\n* `GET` [Get specification field value](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/specification/fieldValue/-fieldValueId-)\r\n* `GET` [Get specification values by field ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pub/specification/fieldvalue/-fieldId-)\r\n* `POST` [Create specification field value](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog_system/pvt/specification/fieldValue)\r\n* `PUT` [Update specification field value](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog_system/pvt/specification/fieldValue)\r\n\r\n### Product\r\n\r\n* `GET` [Get product and SKU IDs](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/products/GetProductAndSkuIds)\r\n* `GET` [Get product by ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/product/-productId-)\r\n* `PUT` [Update product](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/product/-productId-)\r\n* `GET` [Get product and its general context](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/products/productget/-productId-)\r\n* `GET` [Get product by RefId](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/products/productgetbyrefid/-refId-)\r\n* `GET` [Get product's SKUs by product ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pub/products/variations/-productId-)\r\n* `GET` [Get product Review Rate by product ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/addon/pvt/review/GetProductRate/-productId-)\r\n* `POST` [Create product with category and brand](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/product)\r\n\r\n### Product specification\r\n\r\n* `GET` [Get product specifications by product ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/products/-productId-/specification)\r\n* `POST` [Update product specification by product ID](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog_system/pvt/products/-productId-/specification)\r\n* `GET` [Get product specification and its information by product ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/product/-productId-/specification)\r\n* `POST` [Associate product specification](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/product/-productId-/specification)\r\n* `DELETE` [Delete all product specifications by product ID](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/product/-productId-/specification)\r\n* `DELETE` [Delete a product specification](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/product/-productId-/specification/-specificationId-)\r\n* `PUT` [Associate product specification using specification name and group name](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/product/-productId-/specificationvalue)\r\n\r\n### SKU\r\n\r\n* `GET` [List all SKU IDs](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/sku/stockkeepingunitids)\r\n* `GET` [SKU and context](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/sku/stockkeepingunitbyid/-skuId-)\r\n* `GET` [Get SKU by RefId](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/stockkeepingunit)\r\n* `POST` [Create SKU](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/stockkeepingunit)\r\n* `GET` [Get SKU ID by Reference ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/sku/stockkeepingunitidbyrefid/-refId-)\r\n* `GET` [Get SKU by Alternate ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/sku/stockkeepingunitbyalternateId/-alternateId-)\r\n* `GET` [Get SKU list by product ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/sku/stockkeepingunitByProductId/-productId-)\r\n* `POST` [Retrieve SKU ID list by Reference ID list](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog_system/pub/sku/stockkeepingunitidsbyrefids)\r\n* `GET` [Get SKU](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/stockkeepingunit/-skuId-)\r\n* `PUT` [Update SKU](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/stockkeepingunit/-skuId-)\r\n\r\n### SKU specification\r\n\r\n* `GET` [Get SKU specifications](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/stockkeepingunit/-skuId-/specification)\r\n* `POST` [Associate SKU specification](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/stockkeepingunit/-skuId-/specification)\r\n* `PUT` [Update SKU specification](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/stockkeepingunit/-skuId-/specification)\r\n* `DELETE` [Delete all SKU specifications](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/stockkeepingunit/-skuId-/specification)\r\n* `DELETE` [Delete SKU specification](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/stockkeepingunit/-skuId-/specification/-specificationId-)\r\n* `PUT` [Associate SKU specification using specification name and group name](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/stockkeepingunit/-skuId-/specificationvalue)\r\n\r\n### SKU file\r\n\r\n* `GET` [Get SKU files](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/stockkeepingunit/-skuId-/file)\r\n* `POST` [Create SKU file](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/stockkeepingunit/-skuId-/file)\r\n* `DELETE` [Delete All SKU files](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/stockkeepingunit/-skuId-/file)\r\n* `PUT` [Update SKU file](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/stockkeepingunit/-skuId-/file/-skuFileId-)\r\n* `DELETE` [Delete SKU Image File](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/stockkeepingunit/-skuId-/file/-skuFileId-)\r\n* `PUT` [Copy Files from an SKU to another SKU](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/stockkeepingunit/copy/-skuIdfrom-/-skuIdto-/file)\r\n* `DELETE` [Disassociate SKU file](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/stockkeepingunit/disassociate/-skuId-/file/-skuFileId-)\r\n\r\n### SKU complement\r\n\r\n* `GET` [Get SKU complement by SKU ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/stockkeepingunit/-skuId-/complement)\r\n* `GET` [Get SKU complements by Complement Type ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/stockkeepingunit/-skuId-/complement/-complementTypeId-)\r\n* `GET` [Get SKU complements by type](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/sku/complements/-parentSkuId-/-type-)\r\n* `POST` [Create SKU complement](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/skucomplement)\r\n* `GET` [Get SKU complement by SKU complement ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/skucomplement/-skuComplementId-)\r\n* `DELETE` [Delete SKU complement by SKU complement ID](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/skucomplement/-skuComplementId-)\r\n\r\n### SKU EAN\r\n\r\n* `GET` [Get SKU by EAN](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/sku/stockkeepingunitbyean/-ean-)\r\n* `GET` [Get EAN by SKU ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/stockkeepingunit/-skuId-/ean)\r\n* `DELETE` [Delete all SKU EAN values](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/stockkeepingunit/-skuId-/ean)\r\n* `POST` [Create SKU EAN](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/stockkeepingunit/-skuId-/ean/-ean-)\r\n* `DELETE` [Delete SKU EAN](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/stockkeepingunit/-skuId-/ean/-ean-)\r\n\r\n### Attachment\r\n\r\n* `GET` [Get attachment](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/attachment/-attachmentid-)\r\n* `PUT` [Update attachment](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/attachment/-attachmentid-)\r\n* `DELETE` [Delete attachment](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/attachment/-attachmentid-)\r\n* `POST` [Create attachment](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/attachment)\r\n* `GET` [Get all attachments](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/attachments)\r\n\r\n### SKU attachment\r\n\r\n* `POST` [Associate SKU attachment](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/skuattachment)\r\n* `DELETE` [Dissociate attachments and SKUs](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/skuattachment)\r\n* `GET` [Get SKU attachments by SKU ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/stockkeepingunit/-skuId-/attachment)\r\n* `DELETE` [Delete SKU attachment by Attachment Association ID](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/skuattachment/-skuAttachmentAssociationId-)\r\n* `POST` [Associate attachments to an SKU](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog_system/pvt/sku/associateattachments)\r\n\r\n### SKU service\r\n\r\n* `GET` [Get SKU service](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/skuservice/-skuServiceId-)\r\n* `PUT` [Update SKU service](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/skuservice/-skuServiceId-)\r\n* `DELETE` [Dissociate SKU service](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/skuservice/-skuServiceId-)\r\n* `POST` [Associate SKU service](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/skuservice)\r\n\r\n### SKU service attachment\r\n\r\n* `POST` [Associate SKU service attachment](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/skuservicetypeattachment)\r\n* `DELETE` [Dissociate Attachment by Attachment ID or SKU service type ID](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/skuservicetypeattachment)\r\n* `DELETE` [Dissociate Attachment from SKU service type](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/skuservicetypeattachment/-skuServiceTypeAttachmentId-)\r\n\r\n### SKU service type\r\n\r\n* `POST` [Create SKU service type](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/skuservicetype)\r\n* `GET` [Get SKU service type](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/skuservicetype/-skuServiceTypeId-)\r\n* `PUT` [Update SKU service type](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/skuservicetype/-skuServiceTypeId-)\r\n* `DELETE` [Delete SKU service type](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/skuservicetype/-skuServiceTypeId-)\r\n\r\n### SKU service value\r\n\r\n* `POST` [Create SKU service value](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/skuservicevalue)\r\n* `GET` [Get SKU service value](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/skuservicevalue/-skuServiceValueId-)\r\n* `PUT` [Update SKU service value](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/skuservicevalue/-skuServiceValueId-)\r\n* `DELETE` [Delete SKU service value](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/skuservicevalue/-skuServiceValueId-)\r\n\r\n### SKU kit\r\n\r\n* `GET` [Get SKU kit by SKU ID or Parent SKU ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/stockkeepingunitkit)\r\n* `POST` [Create SKU kit](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/stockkeepingunitkit)\r\n* `DELETE` [Delete SKU kit by SKU ID or Parent SKU ID](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/stockkeepingunitkit)\r\n* `GET` [Get SKU kit](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/stockkeepingunitkit/-kitId-)\r\n* `DELETE` [Delete SKU kit by KitId](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/stockkeepingunitkit/-kitId-)\r\n\r\n### SKU seller\r\n\r\n* `GET` [Get details of a seller's SKU](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/skuseller/-sellerId-/-sellerSkuId-)\r\n* `POST` [Remove a seller's SKU binding](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog_system/pvt/skuseller/remove/-sellerId-/-sellerSkuId-)\r\n* `POST` [Change notification with Seller ID and Seller SKU ID](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog_system/pvt/skuseller/changenotification/-sellerId-/-sellerSkuId-)\r\n* `POST` [Change notification with SKU ID](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog_system/pvt/skuseller/changenotification/-skuId-)\r\n\r\n### Similar category\r\n\r\n* `GET` [Get Similar Categories](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/product/-productId-/similarcategory/)\r\n* `POST` [Add Similar category](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/product/-productId-/similarcategory/-categoryId-)\r\n* `DELETE` [Delete Similar category](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/product/-productId-/similarcategory/-categoryId-)\r\n\r\n### Collection Beta\r\n\r\n* `GET` [Get All Collections](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/collection/search)\r\n* `GET` [Get All Inactive Collections](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/collection/inactive)\r\n* `POST` [Create Collection](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/collection/)\r\n* `GET` [Get Collections by search terms](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/collection/search/-searchTerms-)\r\n* `GET` [Import Collection file example](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/collection/stockkeepingunit/importfileexample)\r\n* `POST` [Add products to Collection by imported file](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/collection/-collectionId-/stockkeepingunit/importinsert)\r\n* `POST` [Remove products from Collection by imported file](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/collection/-collectionId-/stockkeepingunit/importexclude)\r\n* `GET` [Get products from a collection](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/collection/-collectionId-/products)\r\n\r\n### Legacy collection\r\n\r\n* `GET` [Get Collection](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/collection/-collectionId-)\r\n* `PUT` [Update Collection](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/collection/-collectionId-)\r\n* `DELETE` [Delete Collection](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/collection/-collectionId-)\r\n* `POST` [Create Collection](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/collection)\r\n\r\n### Legacy subcollection\r\n\r\n* `POST` [Add SKU to Subcollection](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/subcollection/-subCollectionId-/stockkeepingunit)\r\n* `DELETE` [Delete SKU from Subcollection](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/subcollection/-subCollectionId-/stockkeepingunit/-skuId-)\r\n* `POST` [Associate category to Subcollection](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/subcollection/-subCollectionId-/category)\r\n* `DELETE` [Delete category from Subcollection](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/subcollection/-subCollectionId-/brand/-categoryId-)\r\n* `POST` [Associate brand to Subcollection](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/subcollection/-subCollectionId-/brand)\r\n* `DELETE` [Delete brand from Subcollection](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/subcollection/-subCollectionId-/brand/-brandId-)\r\n* `GET` [Get subcollection by collection ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/collection/-collectionId-/subcollection)\r\n* `GET` [Get Subcollection](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/subcollection/-subCollectionId-)\r\n* `PUT` [Update Subcollection](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/subcollection/-subCollectionId-)\r\n* `DELETE` [Delete Subcollection](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/subcollection/-subCollectionId-)\r\n* `POST` [Create Subcollection](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/subcollection)\r\n* `POST` [Reposition SKU on the Subcollection](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/collection/-collectionId-/position)\r\n\r\n### Seller\r\n\r\n* `GET` [Get Seller List](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/seller/list)\r\n* `GET` [Get Seller by ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/seller/-sellerId-)\r\n* `PUT` [Update Seller](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog_system/pvt/seller)\r\n* `POST` [Create Seller](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog_system/pvt/seller)\r\n* `GET` [Get Seller by ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/sellers/-sellerId-)\r\n\r\n### Supplier\r\n\r\n* `POST` [Create Supplier](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/supplier)\r\n* `PUT` [Update Supplier](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/supplier/-supplierId-)\r\n* `DELETE` [Delete Supplier](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/supplier/-supplierId-)\r\n\r\n### Trade policy\r\n\r\n* `GET` [Get Trade Policies by product ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/product/-productId-/salespolicy)\r\n* `POST` [Associate product with trade policy](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/product/-productId-/salespolicy/-tradepolicyId-)\r\n* `DELETE` [Remove product from trade policy](https://developers.vtex.com/docs/api-reference/catalog-api#delete-/api/catalog/pvt/product/-productId-/salespolicy/-tradepolicyId-)\r\n* `GET` [List all SKUs of a trade policy](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/sku/stockkeepingunitidsbysaleschannel)\r\n\r\n### Sales channel\r\n\r\n* `GET` [Get Sales channel List](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/saleschannel/list)\r\n* `GET` [Get Sales channel by ID](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pub/saleschannel/-salesChannelId-)\r\n\r\n### Product indexing\r\n\r\n* `GET` [Get product Indexed Information](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/products/GetIndexedInfo/-productId-)\r\n\r\n### Commercial conditions\r\n\r\n* `GET` [Get all commercial conditions](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/commercialcondition/list)\r\n* `GET` [Get commercial condition](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog_system/pvt/commercialcondition/-commercialConditionId-)\r\n\r\n### Gift list\r\n\r\n* `GET` [Get gift list](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/addon/pvt/giftlist/get/-listId-)",
"version": "1.0"
},
"servers": [
{
"url": "https://{accountName}.{environment}.com.br",
"description": "VTEX server URL.",
"variables": {
"accountName": {
"description": "Name of the VTEX account. Used as part of the URL.",
"default": "apiexamples"
},
"environment": {
"description": "Environment to use. Used as part of the URL.",
"enum": [
"vtexcommercestable"
],
"default": "vtexcommercestable"
}
}
}
],
"paths": {
"/api/catalog_system/pvt/products/GetProductAndSkuIds": {
"get": {
"tags": [
"Product"
],
"summary": "Get product and SKU IDs",
"description": "Retrieves the IDs of products and SKUs. \r\n> 📘 Onboarding guide \r\n>\r\n> Check the new [Catalog onboarding guide](https://developers.vtex.com/vtex-rest-api/docs/catalog-overview). We created this guide to improve the onboarding experience for developers at VTEX. It assembles all documentation on our Developer Portal about Catalog and is organized by focusing on the developer's journey.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Product management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "ProductAndSkuIds",
"parameters": [
{
"name": "categoryId",
"in": "query",
"description": "ID of the category from which you need to retrieve products and SKUs.",
"required": false,
"style": "form",
"explode": true,
"schema": {
"type": "integer",
"format": "int32",
"example": 1
}
},
{
"name": "_from",
"in": "query",
"description": "Insert the ID that will start the request result.",
"required": false,
"style": "form",
"explode": true,
"schema": {
"type": "integer",
"format": "int32",
"example": 1
}
},
{
"name": "_to",
"in": "query",
"description": "Insert the ID that will end the request result.",
"required": false,
"style": "form",
"explode": true,
"schema": {
"type": "integer",
"format": "int32",
"example": 10
}
},
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"data": {
"3": [
5
],
"8": [
310118453,
310118459,
310118463
],
"2": [
3,
310118450,
310118451,
4,
8
],
"9": [
310118454,
310118455,
310118456,
310118457,
310118458,
310118460,
310118461,
310118462,
310118464
],
"12": [
310118490
],
"6": [],
"7": [
310118452
],
"1": [
1,
123456,
310118449,
310118489,
7,
2
],
"5": [
310118465
],
"4": [
310118448
],
"10": [],
"11": []
},
"range": {
"total": 12,
"from": 1,
"to": 20
}
},
"schema": {
"type": "object",
"properties": {
"data": {
"type": "object",
"description": "Object composed of product IDs and SKU IDs, where the parent ID is from products and the children IDs are from SKUs.",
"properties": {
"Product ID": {
"type": "array",
"description": "Array with SKU IDs of a certain product.",
"items": {
"type": "integer",
"description": "Product SKU ID."
}
}
}
},
"range": {
"type": "object",
"description": "Object with information about the product and SKUs list.",
"properties": {
"total": {
"type": "integer",
"description": "Total quantity of SKUs."
},
"from": {
"type": "integer",
"description": "Initial product ID."
},
"to": {
"type": "integer",
"description": "Final product ID."
}
}
}
}
}
}
}
}
}
}
},
"/api/catalog/pvt/product/{productId}": {
"get": {
"tags": [
"Product"
],
"summary": "Get product by ID",
"description": "Retrieves a specific product by its ID. The response body fields are exactly the inforamtion needed to create a new product. \r\n> 📘 Onboarding guide \r\n>\r\n> Check the new [Catalog onboarding guide](https://developers.vtex.com/vtex-rest-api/docs/catalog-overview). We created this guide to improve the onboarding experience for developers at VTEX. It assembles all documentation on our Developer Portal about Catalog and is organized by focusing on the developer's journey.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Product and SKU Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "GetProductbyid",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"description": "Product's unique numerical identifier.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "1"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 42,
"Name": "Zoom Stefan Janoski Canvas RM SB Varsity Red",
"DepartmentId": 2000089,
"CategoryId": 2000090,
"BrandId": 12121219,
"LinkId": "stefan-janoski-canvas-varsity-red",
"RefId": "sr_1_90",
"IsVisible": true,
"Description": "The Nike Zoom Stefan Janoski Men's Shoe is made with a premium leather upper for superior durability and a flexible midsole for all-day comfort. A tacky gum rubber outsole delivers outstanding traction.",
"DescriptionShort": "The Nike Zoom Stefan Janoski is made with a premium leather.",
"ReleaseDate": "2020-01-01T00:00:00",
"KeyWords": "Zoom,Stefan,Janoski",
"Title": "Zoom Stefan Janoski Canvas RM SB Varsity Re",
"IsActive": true,
"TaxCode": "",
"MetaTagDescription": "The Nike Zoom Stefan Janoski Men's Shoe is made with a premium leather upper for superior durability and a flexible midsole for all-day comfort. A tacky gum rubber outsole delivers outstanding traction.",
"SupplierId": 1,
"ShowWithoutStock": true,
"AdWordsRemarketingCode": "",
"LomadeeCampaignCode": "",
"Score": 1
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Product's unique numerical identifier."
},
"Name": {
"type": "string",
"description": "Product's name. Limited to 150 characters."
},
"DepartmentId": {
"type": "integer",
"description": "Department ID according to the product's category."
},
"CategoryId": {
"type": "integer",
"description": "Category ID associated with this product."
},
"BrandId": {
"type": "integer",
"description": "Brand ID associated with this product."
},
"LinkId": {
"type": "string",
"description": "Slug that will be used to build the product page URL. If it not informed, it will be generated according to the product's name replacing spaces and special characters by hyphens (`-`)."
},
"RefId": {
"type": "string",
"description": "Product Reference Code."
},
"IsVisible": {
"type": "boolean",
"description": "Shows (`true`) or hides (`false`) the product in search result and product pages, but the product can still be added to the shopping cart. Usually applicable for gifts."
},
"Description": {
"type": "string",
"description": "Product description."
},
"DescriptionShort": {
"type": "string",
"description": "Short product description. This information can be displayed on both the product page and the shelf, using the following controls:\r\n Store Framework: `$product.DescriptionShort`.\r\n Legacy CMS Portal: ``."
},
"ReleaseDate": {
"type": "string",
"description": "Used to assist in the ordering of the search result of the site. Using the `O=OrderByReleaseDateDESC` query string, you can pull this value and show the display order by release date. This attribute is also used as a condition for dynamic collections."
},
"KeyWords": {
"type": "string",
"description": "Store Framework: Deprecated. \r\nLegacy CMS Portal: Keywords or synonyms related to the product, separated by comma (`,`). \"Television\", for example, can have a substitute word like \"TV\". This field is important to make your searches more comprehensive."
},
"Title": {
"type": "string",
"description": "Product's Title tag. Limited to 150 characters. It is presented in the browser tab and corresponds to the title of the product page. This field is important for SEO."
},
"IsActive": {
"type": "boolean",
"description": "Activate (`true`) or inactivate (`false`) product."
},
"TaxCode": {
"type": "string",
"description": "Product tax code, used for tax calculation."
},
"MetaTagDescription": {
"type": "string",
"description": "Brief description of the product for SEO. It is recommended not to exceed 150 characters."
},
"SupplierId": {
"type": "integer",
"description": "Deprecated field.",
"deprecated": true,
"nullable": true
},
"ShowWithoutStock": {
"type": "boolean",
"description": "If `true`, activates the [Notify Me](https://help.vtex.com/en/tutorial/setting-up-the-notify-me-option--2VqVifQuf6Co2KG048Yu6e) option when the product is out of stock."
},
"AdWordsRemarketingCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true
},
"LomadeeCampaignCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true
},
"Score": {
"type": "integer",
"description": "Value used to set the priority on the search result page."
}
}
}
}
}
}
},
"deprecated": false
},
"put": {
"tags": [
"Product"
],
"summary": "Update product",
"description": "Updates an existing product.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Product and SKU Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"required": true,
"description": "Product's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"Name",
"CategoryId",
"BrandId"
],
"properties": {
"Name": {
"type": "string",
"description": "Product's name. Limited to 150 characters.",
"example": "Zoom Stefan Janoski Canvas RM SB Varsity Red"
},
"DepartmentId": {
"type": "integer",
"description": "Department ID according to the product's category.",
"example": 2000089
},
"CategoryId": {
"type": "integer",
"description": "Category ID associated with this product.",
"example": 2000090
},
"BrandId": {
"type": "integer",
"description": "Brand ID associated with this product.",
"example": 12121219
},
"LinkId": {
"type": "string",
"description": "Slug that will be used to build the product page URL. If it not informed, it will be generated according to the product's name replacing spaces and special characters by hyphens (`-`).",
"example": "stefan-janoski-canvas-varsity-red"
},
"RefId": {
"type": "string",
"description": "Product Reference Code.",
"example": "sr_1_90"
},
"IsVisible": {
"type": "boolean",
"description": "Shows (`true`) or hides (`false`) the product in search result and product pages, but the product can still be added to the shopping cart. Usually applicable for gifts.",
"example": true
},
"Description": {
"type": "string",
"description": "Product description.",
"example": "The Nike Zoom Stefan Janoski Men's Shoe is made with a premium leather upper for superior durability and a flexible midsole for all-day comfort. A tacky gum rubber outsole delivers outstanding traction."
},
"DescriptionShort": {
"type": "string",
"description": "Short product description. This information can be displayed on both the product page and the shelf, using the following controls:\r\n Store Framework: `$product.DescriptionShort`.\r\n Legacy CMS Portal: ``.",
"example": "The Nike Zoom Stefan Janoski is made with a premium leather."
},
"ReleaseDate": {
"type": "string",
"description": "Used to assist in the ordering of the search result of the site. Using the `O=OrderByReleaseDateDESC` query string, you can pull this value and show the display order by release date. This attribute is also used as a condition for dynamic collections.",
"example": "2019-01-01T00:00:00"
},
"KeyWords": {
"type": "string",
"description": "Store Framework: Deprecated. \r\nLegacy CMS Portal: Keywords or synonyms related to the product, separated by comma (`,`). \"Television\", for example, can have a substitute word like \"TV\". This field is important to make your searches more comprehensive.",
"example": "Zoom,Stefan,Janoski"
},
"Title": {
"type": "string",
"description": "Product's Title tag. Limited to 150 characters. It is presented in the browser tab and corresponds to the title of the product page. This field is important for SEO.",
"example": "Zoom Stefan Janoski Canvas RM SB Varsity Red"
},
"IsActive": {
"type": "boolean",
"description": "Activate (`true`) or inactivate (`false`) product.",
"example": true
},
"TaxCode": {
"type": "string",
"description": "Product tax code, used for tax calculation.",
"example": "12345"
},
"MetaTagDescription": {
"type": "string",
"description": "Brief description of the product for SEO. It is recommended not to exceed 150 characters.",
"example": "The Nike Zoom Stefan Janoski Men's Shoe is made with a premium leather upper for superior durability and a flexible midsole for all-day comfort. A tacky gum rubber outsole delivers outstanding traction."
},
"SupplierId": {
"type": "integer",
"description": "Deprecated field.",
"deprecated": true,
"nullable": true,
"example": null
},
"ShowWithoutStock": {
"type": "boolean",
"description": "If `true`, activates the [Notify Me](https://help.vtex.com/en/tutorial/setting-up-the-notify-me-option--2VqVifQuf6Co2KG048Yu6e) option when the product is out of stock.",
"example": true
},
"AdWordsRemarketingCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true,
"nullable": true,
"example": null
},
"LomadeeCampaignCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true,
"nullable": true,
"example": null
},
"Score": {
"type": "integer",
"description": "Value used to set the priority on the search result page.",
"example": 1
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 42,
"Name": "Zoom Stefan Janoski Canvas RM SB Varsity Red",
"DepartmentId": 2000089,
"CategoryId": 2000090,
"BrandId": 12121219,
"LinkId": "stefan-janoski-canvas-varsity-red",
"RefId": "sr_1_90",
"IsVisible": true,
"Description": "The Nike Zoom Stefan Janoski Men's Shoe is made with a premium leather upper for superior durability and a flexible midsole for all-day comfort. A tacky gum rubber outsole delivers outstanding traction.",
"DescriptionShort": "The Nike Zoom Stefan Janoski is made with a premium leather.",
"ReleaseDate": "2020-01-01T00:00:00",
"KeyWords": "Zoom,Stefan,Janoski",
"Title": "Zoom Stefan Janoski Canvas RM SB Varsity Re",
"IsActive": true,
"TaxCode": "",
"MetaTagDescription": "The Nike Zoom Stefan Janoski Men's Shoe is made with a premium leather upper for superior durability and a flexible midsole for all-day comfort. A tacky gum rubber outsole delivers outstanding traction.",
"SupplierId": 1,
"ShowWithoutStock": true,
"AdWordsRemarketingCode": "",
"LomadeeCampaignCode": "",
"Score": 1
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Product's unique numerical identifier."
},
"Name": {
"type": "string",
"description": "Product's name. Limited to 150 characters."
},
"DepartmentId": {
"type": "integer",
"description": "Department ID according to the product's category."
},
"CategoryId": {
"type": "integer",
"description": "Category ID associated with this product."
},
"BrandId": {
"type": "integer",
"description": "Brand ID associated with this product."
},
"LinkId": {
"type": "string",
"description": "Slug that will be used to build the product page URL. If not informed, it will be generated according to the product's name replacing spaces and special characters by hyphens (`-`)."
},
"RefId": {
"type": "string",
"description": "Product reference code."
},
"IsVisible": {
"type": "boolean",
"description": "Shows (`true`) or hides (`false`) the product in search result and product pages, but the product can still be added to the shopping cart. Usually applicable for gifts."
},
"Description": {
"type": "string",
"description": "Product description."
},
"DescriptionShort": {
"type": "string",
"description": "Short product description. This information can be displayed on both the product page and the shelf, using the following controls:\r\n Store Framework: `$product.DescriptionShort`.\r\n Legacy CMS Portal: ``."
},
"ReleaseDate": {
"type": "string",
"description": "Used to assist in the ordering of the search result of the site. Using the `O=OrderByReleaseDateDESC` query string, you can pull this value and show the display order by release date. This attribute is also used as a condition for dynamic collections."
},
"KeyWords": {
"type": "string",
"description": "Store Framework: Deprecated. \r\nLegacy CMS Portal: Keywords or synonyms related to the product, separated by comma (`,`). \"Television\", for example, can have a substitute word like \"TV\". This field is important to make your searches more comprehensive."
},
"Title": {
"type": "string",
"description": "Product's Title tag. Limited to 150 characters. It is presented in the browser tab and corresponds to the title of the product page. This field is important for SEO."
},
"IsActive": {
"type": "boolean",
"description": "Activate (`true`) or inactivate (`false`) product."
},
"TaxCode": {
"type": "string",
"description": "Product tax code, used for tax calculation."
},
"MetaTagDescription": {
"type": "string",
"description": "Brief description of the product for SEO. It's recommended that you don't exceed 150 characters."
},
"SupplierId": {
"type": "integer",
"description": "Deprecated field.",
"deprecated": true,
"nullable": true
},
"ShowWithoutStock": {
"type": "boolean",
"description": "If `true`, activates the [Notify Me](https://help.vtex.com/en/tutorial/setting-up-the-notify-me-option--2VqVifQuf6Co2KG048Yu6e) option when the product is out of stock."
},
"AdWordsRemarketingCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true
},
"LomadeeCampaignCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true
},
"Score": {
"type": "integer",
"description": "Value used to set the priority on the search result page."
}
}
}
}
}
}
}
}
},
"/api/catalog_system/pvt/products/productget/{productId}": {
"get": {
"tags": [
"Product"
],
"summary": "Get product and its general context",
"description": "Retrieves a specific product's general information as name, description and the trade policies where it is included.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Product Form** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "ProductandTradePolicy",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"description": "Product's unique numerical identifier.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 1,
"Name": "Ração Royal Canin Feline Urinary",
"DepartmentId": 1,
"CategoryId": 10,
"BrandId": 2000000,
"LinkId": "racao-royal-canin-feline-urinary",
"RefId": "",
"IsVisible": true,
"Description": "Descrição.",
"DescriptionShort": "",
"ReleaseDate": "2020-01-06T00:00:00",
"KeyWords": "bbbbbbbbbbbb*, a@",
"Title": "Ração Royal Canin Feline Urinary",
"IsActive": true,
"TaxCode": "",
"MetaTagDescription": "Descrição.",
"SupplierId": 1,
"ShowWithoutStock": true,
"ListStoreId": [
1,
2,
3
],
"AdWordsRemarketingCode": "",
"LomadeeCampaignCode": ""
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Product ID."
},
"Name": {
"type": "string",
"description": "Product's name. Limited to 150 characters."
},
"DepartmentId": {
"type": "integer",
"description": "Product department ID."
},
"CategoryId": {
"type": "integer",
"description": "Product category ID."
},
"BrandId": {
"type": "integer",
"description": "Product brand ID."
},
"LinkId": {
"type": "string",
"description": "Product text link."
},
"RefId": {
"type": "string",
"description": "Product reference code."
},
"IsVisible": {
"type": "boolean",
"description": "If the product is visible on the store."
},
"Description": {
"type": "string",
"description": "Product description."
},
"DescriptionShort": {
"type": "string",
"description": "Product complement name."
},
"ReleaseDate": {
"type": "string",
"description": "Product release date."
},
"KeyWords": {
"type": "string",
"description": "Substitutes words for the product."
},
"Title": {
"type": "string",
"description": "Product's Title tag. Limited to 150 characters. It is presented in the browser tab and corresponds to the title of the product page. This field is important for SEO."
},
"IsActive": {
"type": "boolean",
"description": "If the product is active (`true`) or not (`false`) at the store."
},
"TaxCode": {
"type": "string",
"description": "Product fiscal code."
},
"MetaTagDescription": {
"type": "string",
"description": "Product meta tag description."
},
"SupplierId": {
"type": "integer",
"description": "Product supplier ID."
},
"ShowWithoutStock": {
"type": "boolean",
"description": "Defines if the product will be shown in the store even if it's out of stock (`true`) or not (`false`)."
},
"ListStoreId": {
"type": "array",
"description": "List with the IDs of trade policies where the product is included.",
"items": {
"type": "integer",
"description": "Trade policy ID."
}
},
"AdWordsRemarketingCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true
},
"LomadeeCampaignCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true
}
}
}
}
}
}
}
}
},
"/api/catalog_system/pvt/products/productgetbyrefid/{refId}": {
"get": {
"tags": [
"Product"
],
"summary": "Get product by reference ID",
"description": "Retrieves a specific product by its Reference ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Product management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "ProductbyRefId",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "refId",
"in": "path",
"description": "Product reference code.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "12345"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 17,
"Name": "BLACK+DECKER 20V MAX Cordless Drill / Driver with 30-Piece Accessories (LD120VA)",
"DepartmentId": 9287,
"CategoryId": 9287,
"BrandId": 9280,
"LinkId": "black-decker-20v-max-cordless-drill-driver-with-30-piece-acessories-ld120va",
"RefId": "880010",
"IsVisible": true,
"Description": "The Black and Decker LD120-VoltA 20-Volt Max Lithium Drill/Driver with 30 Accessories come with the Black and Decker 20-volt max Lithium Ion Battery. These batteries are always ready, holding a charge up to 18 months. This drill provides an extra level of control with a 24 position clutch that helps to prevent stripping and overdriving screws. It has a soft grip handle that provides added comfort during use and a light weight to prevent user fatigue. This drill is ideal for drilling and screwdriving through wood, metal, and plastic. The LD120-VoltA set includes: LD120 20-Volt MAX Lithium Drill/Driver, (1) LB20 20-Volt MAX Lithium Ion Battery, (1) LCS20 Charger, (6) Brad Point Drill Bits, (10) 1-Inch Screwdriving Bits, (9) 2-Inch Screwdriving Bits, (4) Nut Drivers, (1) Magnetic Bit Tip Holder and is backed by Black and Decker's 2 year limited warranty.",
"DescriptionShort": "The Black and Decker LD120-VoltA 20-Volt Max Lithium Drill/Driver with 30 Accessories come with the Black and Decker 20-volt max Lithium Ion Battery. These batteries are always ready, holding a charge up to 18 months. This drill provides an extra level of control with a 24 position clutch that helps to prevent stripping and overdriving screws. It has a soft grip handle that provides added comfort during use and a light weight to prevent user fatigue. This drill is ideal for drilling and screwdriving through wood, metal, and plastic. The LD120-VoltA set includes: LD120 20-Volt MAX Lithium Drill/Driver, (1) LB20 20-Volt MAX Lithium Ion Battery, (1) LCS20 Charger, (6) Brad Point Drill Bits, (10) 1-Inch Screwdriving Bits, (9) 2-Inch Screwdriving Bits, (4) Nut Drivers, (1) Magnetic Bit Tip Holder and is backed by Black and Decker's 2 year limited warranty.",
"ReleaseDate": "2020-01-01T00:00:00",
"KeyWords": "product,sample",
"Title": "BLACK+DECKER 20V MAX Cordless Drill / Driver with 30-Piece Accessories (LD120VA)",
"IsActive": true,
"TaxCode": "",
"MetaTagDescription": "The Black and Decker LD120-VoltA 20-Volt Max Lithium Drill/Driver with 30 Accessories come with the Black and Decker 20-volt max Lithium Ion Battery. These batteries are always ready, holding a charge up to 18 months. This drill provides an extra level of control with a 24 position clutch that helps to prevent stripping and overdriving screws. It has a soft grip handle that provides added comfort during use and a light weight to prevent user fatigue. This drill is ideal for drilling and screwdriving through wood, metal, and plastic. The LD120-VoltA set includes: LD120 20-Volt MAX Lithium Drill/Driver, (1) LB20 20-Volt MAX Lithium Ion Battery, (1) LCS20 Charger, (6) Brad Point Drill Bits, (10) 1-Inch Screwdriving Bits, (9) 2-Inch Screwdriving Bits, (4) Nut Drivers, (1) Magnetic Bit Tip Holder and is backed by Black and Decker's 2 year limited warranty.",
"SupplierId": 1,
"ShowWithoutStock": true,
"ListStoreId": [
1
],
"AdWordsRemarketingCode": "",
"LomadeeCampaignCode": ""
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "ID of the product."
},
"Name": {
"type": "string",
"description": "Name of the product."
},
"DepartmentId": {
"type": "integer",
"description": "ID of product department."
},
"CategoryId": {
"type": "integer",
"description": "ID of product category."
},
"BrandId": {
"type": "integer",
"description": "ID of the product brand."
},
"LinkId": {
"type": "string",
"description": "Category URL."
},
"RefId": {
"type": "string",
"description": "Product Reference ID."
},
"IsVisible": {
"type": "boolean",
"description": "If the product are visible in search and list pages."
},
"Description": {
"type": "string",
"description": "Product Description, HTML is allowed."
},
"DescriptionShort": {
"type": "string",
"description": "Product Short Description."
},
"ReleaseDate": {
"type": "string",
"description": "Product Release Date, for list ordering and product cluster highlight."
},
"KeyWords": {
"type": "string",
"description": "Alternatives Keywords to improve the product findability."
},
"Title": {
"type": "string",
"description": "Product's Title tag. Limited to 150 characters. It is presented in the browser tab and corresponds to the title of the product page. This field is important for SEO."
},
"IsActive": {
"type": "boolean",
"description": "If the product is Active."
},
"TaxCode": {
"type": "string",
"description": "SKU Tax Code."
},
"MetaTagDescription": {
"type": "string",
"description": "Meta Description for the product page."
},
"SupplierId": {
"type": "integer",
"description": "Product Supplier ID."
},
"ShowWithoutStock": {
"type": "boolean",
"description": "If the product can be visible without stock."
},
"ListStoreId": {
"type": "array",
"description": "Array with the ID of all the trade policies that are related to the product.",
"items": {
"type": "integer",
"description": "Trade policy ID."
}
},
"AdWordsRemarketingCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true
},
"LomadeeCampaignCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true
}
}
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pub/products/variations/{productId}": {
"get": {
"tags": [
"Product"
],
"summary": "Get product's SKUs by product ID",
"description": "Retrieves data about a product and all SKUs related to it given the product's ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Product management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "ProductVariations",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"description": "Product's unique numerical identifier.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"productId": 9,
"name": "Tshirt",
"salesChannel": "2",
"available": true,
"displayMode": "list",
"dimensions": [
"Color",
"Size",
"Origin country",
"Gender"
],
"dimensionsInputType": {
"Color": "Combo",
"Size": "Combo",
"Origin country": "Combo",
"Gender": "Combo"
},
"dimensionsMap": {
"Color": [
"Yellow",
"Blue",
"Red"
],
"Size": [
"S",
"M",
"L"
],
"Origin country": [
"Brazil"
],
"Gender": [
"Male"
]
},
"skus": [
{
"sku": 310118454,
"skuname": "Yellow - L",
"dimensions": {
"Color": "Yellow",
"Size": "L",
"Origin country": "Brazil",
"Gender": "Male"
},
"available": false,
"availablequantity": 0,
"cacheVersionUsedToCallCheckout": null,
"listPriceFormated": "R$ 0,00",
"listPrice": 0,
"taxFormated": "R$ 0,00",
"taxAsInt": 0,
"bestPriceFormated": "R$ 9.999.876,00",
"bestPrice": 999987600,
"spotPrice": 999987600,
"installments": 0,
"installmentsValue": 0,
"installmentsInsterestRate": null,
"image": "https://lojadobreno.vteximg.com.br/arquivos/ids/155467-292-292/image-5d7ad76ad1954c53adecab4138319034.jpg?v=637321899584500000",
"sellerId": "1",
"seller": "lojadobreno",
"measures": {
"cubicweight": 1.0000,
"height": 5.0000,
"length": 20.0000,
"weight": 200.0000,
"width": 20.0000
},
"unitMultiplier": 1.0000,
"rewardValue": 0
},
{
"sku": 310118455,
"skuname": "Red - M",
"dimensions": {
"Color": "Red",
"Size": "M",
"Origin country": "Brazil",
"Gender": "Male"
},
"available": true,
"availablequantity": 99999,
"cacheVersionUsedToCallCheckout": "38395F1AEF59DF5CEAEDE472328145CD_",
"listPriceFormated": "R$ 0,00",
"listPrice": 0,
"taxFormated": "R$ 0,00",
"taxAsInt": 0,
"bestPriceFormated": "R$ 20,00",
"bestPrice": 2000,
"spotPrice": 2000,
"installments": 1,
"installmentsValue": 2000,
"installmentsInsterestRate": 0,
"image": "https://lojadobreno.vteximg.com.br/arquivos/ids/155468-292-292/image-601a6099aace48b89d26fc9f22e8e611.jpg?v=637321906602470000",
"sellerId": "pedrostore",
"seller": "pedrostore",
"measures": {
"cubicweight": 0.4167,
"height": 5.0000,
"length": 20.0000,
"weight": 200.0000,
"width": 20.0000
},
"unitMultiplier": 1.0000,
"rewardValue": 0
}
]
},
"schema": {
"type": "object",
"properties": {
"productId": {
"type": "integer",
"description": "Product's unique numerical identifier."
},
"name": {
"type": "string",
"description": "Product name."
},
"salesChannel": {
"type": "string",
"description": "Trade policy ID."
},
"available": {
"type": "boolean",
"description": "Defines if the product is available (`true`) or not (`false`)."
},
"displayMode": {
"type": "string",
"description": "Defines the mannner SKUs are displayed."
},
"dimensions": {
"type": "array",
"description": "Lists SKU specifications.",
"items": {
"type": "string",
"description": "Name of the SKU specification."
}
},
"dimensionsInputType": {
"type": "object",
"description": "Lists SKU specifications and their Field type, in the following format: `\"{specificationName}\":\"{fieldType}\"`."
},
"dimensionsMap": {
"type": "object",
"description": "Lists SKU specifications and their possible values inside arrays."
},
"skus": {
"type": "array",
"description": "Array containing information about the product's SKUs.",
"items": {
"type": "object",
"description": "Object containing information about a specific SKU.",
"properties": {
"sku": {
"type": "integer",
"description": "SKU ID."
},
"skuname": {
"type": "string",
"description": "SKU Name."
},
"dimensions": {
"type": "object",
"description": "Lists SKU specifications and their respective values."
},
"available": {
"type": "boolean",
"description": "Defines if the SKU is available (`true`) or not (`false`)."
},
"availablequantity": {
"type": "integer",
"description": "Available quantity of the SKU in stock."
},
"cacheVersionUsedToCallCheckout": {
"type": "string",
"description": "Cache version used to call Checkout.",
"nullable": true
},
"listPriceFormated": {
"type": "string",
"description": "List price formatted according to the valid currency."
},
"listPrice": {
"type": "integer",
"description": "List price."
},
"taxFormated": {
"type": "string",
"description": "Tax value formatted according to the valid currency."
},
"taxAsInt": {
"type": "integer",
"description": "Tax value."
},
"bestPriceFormated": {
"type": "string",
"description": "Best price formatted according to the valid currency."
},
"bestPrice": {
"type": "integer",
"description": "Best price."
},
"spotPrice": {
"type": "integer",
"description": "Spot price."
},
"installments": {
"type": "integer",
"description": "Number of installments."
},
"installmentsValue": {
"type": "integer",
"description": "Value of installments."
},
"installmentsInsterestRate": {
"type": "integer",
"description": "Interest rate of installments.",
"nullable": true
},
"image": {
"type": "string",
"description": "SKU image URL."
},
"sellerId": {
"type": "string",
"description": "Seller ID."
},
"measures": {
"type": "object",
"description": "SKU measures.",
"properties": {
"cubicweight": {
"type": "number",
"description": "Cubic weight."
},
"height": {
"type": "number",
"description": "Height."
},
"length": {
"type": "number",
"description": "Length."
},
"weight": {
"type": "number",
"description": "Weight."
},
"width": {
"type": "number",
"description": "Width."
}
}
},
"unitMultiplier": {
"type": "number",
"description": "SKU Unit Multiplier."
},
"rewardValue": {
"type": "integer",
"description": "Credit that the customer receives when finalizing an order that includes the SKU. By filling this field out with `1`, the customer receives credit on the site in the selected currency, e.g. U$ 1."
}
}
}
}
}
}
}
}
}
},
"deprecated": false
}
},
"/api/addon/pvt/review/GetProductRate/{productId}": {
"get": {
"tags": [
"Product"
],
"summary": "Get product review rate by product ID",
"description": "Retrieves the review rate of a product given the product's ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Reviews list** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"description": "Product's unique numerical identifier.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "number",
"description": "Review rate number."
},
"example": 3.0
}
}
}
},
"deprecated": false
}
},
"/api/catalog/pvt/product": {
"post": {
"tags": [
"Product"
],
"summary": "Create product with category and brand",
"description": "This endpoint allows two types of request:\r\n\r\n**Type 1:** Creating a new product as well as a new category path (including subcategories) and a new brand by using `CategoryPath` and `BrandName` parameters.\r\n\r\n**Type 2:** Creating a new product given an existing `BrandId` and an existing `CategoryId`.\r\n\r\nWhen creating a product, regardless of the type of request, if there is a need to create a new product with a specific custom product ID, specify the `Id` (integer) in the request body. Otherwise, VTEX will generate the ID automatically.\r\n> 📘 Onboarding guide \r\n>\r\n> Check the new [Catalog onboarding guide](https://developers.vtex.com/vtex-rest-api/docs/catalog-overview). We created this guide to improve the onboarding experience for developers at VTEX. It assembles all documentation on our Developer Portal about Catalog and is organized by focusing on the developer's journey.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Product and SKU Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"oneOf": [
{
"type": "object",
"description": "Request type that creates a new product as well as a new category path (including subcategories) and a new brand by using `CategoryPath` and `BrandName` parameters.",
"title": "New category and brand",
"required": [
"Name"
],
"properties": {
"Id": {
"type": "integer",
"description": "Product's unique numerical identifier. If not informed, it will be automatically generated by VTEX.",
"example": 42
},
"Name": {
"type": "string",
"description": "Product's name. Limited to 150 characters.",
"example": "Zoom Stefan Janoski Canvas RM SB Varsity Red"
},
"CategoryPath": {
"type": "string",
"description": "Path of categories associated with this product, from the highest level of category to the lowest level, separated by `/`. It is mandatory to use either this field or the `CategoryId` field.",
"example": "Mens/Clothing/T-Shirts"
},
"DepartmentId": {
"type": "integer",
"description": "Department ID according to the product's category.",
"example": 1
},
"BrandName": {
"type": "string",
"description": "Name of the brand that will be associated with this product. It is mandatory to use either this field or the `BrandId` field. If you wish to create a new brand, that is, in case the brand does not exist yet, use this field instead of `BrandId`.",
"example": "Sample brand"
},
"LinkId": {
"type": "string",
"description": "Slug that will be used to build the product page URL. If it not informed, it will be generated according to the product's name replacing spaces and special characters by hyphens (`-`).",
"example": "stefan-janoski-canvas-varsity-red"
},
"RefId": {
"type": "string",
"description": "Product Reference Code.",
"example": "sr_1_90"
},
"IsVisible": {
"type": "boolean",
"description": "Shows (`true`) or hides (`false`) the product in search result and product pages, but the product can still be added to the shopping cart. Usually applicable for gifts.",
"example": true
},
"Description": {
"type": "string",
"description": "Product description.",
"example": "The Nike Zoom Stefan Janoski Men's Shoe is made with a premium leather upper for superior durability and a flexible midsole for all-day comfort. A tacky gum rubber outsole delivers outstanding traction."
},
"ReleaseDate": {
"type": "string",
"description": "Used to assist in the ordering of the search result of the site. Using the `O=OrderByReleaseDateDESC` query string, you can pull this value and show the display order by release date. This attribute is also used as a condition for dynamic collections.",
"example": "2019-01-01T00:00:00"
},
"Title": {
"type": "string",
"description": "Product's Title tag. Limited to 150 characters. It is presented in the browser tab and corresponds to the title of the product page. This field is important for SEO.",
"example": "Zoom Stefan Janoski Canvas RM SB Varsity Red"
},
"IsActive": {
"type": "boolean",
"description": "Activate (`true`) or inactivate (`false`) product.",
"example": true
},
"TaxCode": {
"type": "string",
"description": "Product tax code, used for tax calculation. This field is important for SEO. Limited to 150 characters.",
"example": "12345"
},
"MetaTagDescription": {
"type": "string",
"description": "Brief description of the product for SEO. It is recommended not to exceed 150 characters.",
"example": "The Nike Zoom Stefan Janoski Men's Shoe is made with a premium leather upper for superior durability and a flexible midsole for all-day comfort. A tacky gum rubber outsole delivers outstanding traction."
},
"ShowWithoutStock": {
"type": "boolean",
"description": "If `true`, activates the [Notify Me](https://help.vtex.com/en/tutorial/setting-up-the-notify-me-option--2VqVifQuf6Co2KG048Yu6e) option when the product is out of stock.",
"example": true
},
"LomadeeCampaignCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true,
"example": null,
"nullable": true
},
"Score": {
"type": "integer",
"description": "Value used to set the priority on the search result page.",
"example": 1
}
}
},
{
"type": "object",
"description": "Request type that creates a new product given an existing `BrandId` and an existing `CategoryId`.",
"title": "Associating it to an existing category and brand",
"required": [
"Name"
],
"properties": {
"Id": {
"type": "integer",
"description": "Product's unique numerical identifier. If not informed, it will be automatically generated by VTEX.",
"example": 42
},
"Name": {
"type": "string",
"description": "Product's name. Limited to 150 characters.",
"example": "Zoom Stefan Janoski Canvas RM SB Varsity Red"
},
"DepartmentId": {
"type": "integer",
"description": "Department ID according to the product's category.",
"example": 1
},
"CategoryId": {
"type": "integer",
"description": "ID of an existing category that will be associated with this product. It is mandatory to use either this field or the `CategoryPath` field.",
"example": 2000090
},
"BrandId": {
"type": "integer",
"description": "ID of an existing brand that will be associated with this product. It is mandatory to use either this field or the `BrandName` field.",
"example": 12121219
},
"LinkId": {
"type": "string",
"description": "Slug that will be used to build the product page URL. If it not informed, it will be generated according to the product's name replacing spaces and special characters by hyphens (`-`).",
"example": "stefan-janoski-canvas-varsity-red"
},
"RefId": {
"type": "string",
"description": "Product Reference Code.",
"example": "sr_1_90"
},
"IsVisible": {
"type": "boolean",
"description": "Shows (`true`) or hides (`false`) the product in search result and product pages, but the product can still be added to the shopping cart. Usually applicable for gifts.",
"example": true
},
"Description": {
"type": "string",
"description": "Product description.",
"example": "The Nike Zoom Stefan Janoski Men's Shoe is made with a premium leather upper for superior durability and a flexible midsole for all-day comfort. A tacky gum rubber outsole delivers outstanding traction."
},
"DescriptionShort": {
"type": "string",
"description": "Short product description. This information can be displayed on both the product page and the shelf, using the following controls:\r\n Store Framework: `$product.DescriptionShort`.\r\n Legacy CMS Portal: ``.",
"example": "The Nike Zoom Stefan Janoski is made with a premium leather."
},
"ReleaseDate": {
"type": "string",
"description": "Used to assist in the ordering of the search result of the site. Using the `O=OrderByReleaseDateDESC` query string, you can pull this value and show the display order by release date. This attribute is also used as a condition for dynamic collections.",
"example": "2019-01-01T00:00:00"
},
"KeyWords": {
"type": "string",
"description": "Store Framework: Deprecated. \r\nLegacy CMS Portal: Keywords or synonyms related to the product, separated by comma (`,`). \"Television\", for example, can have a substitute word like \"TV\". This field is important to make your searches more comprehensive.",
"example": "Zoom,Stefan,Janoski"
},
"Title": {
"type": "string",
"description": "Product's Title tag. Limited to 150 characters. It is presented in the browser tab and corresponds to the title of the product page. This field is important for SEO.",
"example": "Zoom Stefan Janoski Canvas RM SB Varsity Red"
},
"IsActive": {
"type": "boolean",
"description": "Activate (`true`) or inactivate (`false`) product.",
"example": true
},
"TaxCode": {
"type": "string",
"description": "Product tax code, used for tax calculation. This field is important for SEO. Limited to 150 characters.",
"example": "12345"
},
"MetaTagDescription": {
"type": "string",
"description": "Brief description of the product for SEO. It is recommended not to exceed 150 characters.",
"example": "The Nike Zoom Stefan Janoski Men's Shoe is made with a premium leather upper for superior durability and a flexible midsole for all-day comfort. A tacky gum rubber outsole delivers outstanding traction."
},
"SupplierId": {
"type": "integer",
"description": "Deprecated field.",
"example": null,
"deprecated": true,
"nullable": true
},
"ShowWithoutStock": {
"type": "boolean",
"description": "If `true`, activates the [Notify Me](https://help.vtex.com/en/tutorial/setting-up-the-notify-me-option--2VqVifQuf6Co2KG048Yu6e) option when the product is out of stock.",
"example": true
},
"AdWordsRemarketingCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true,
"nullable": true,
"example": null
},
"LomadeeCampaignCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true,
"nullable": true,
"example": null
},
"Score": {
"type": "integer",
"description": "Value used to set the priority on the search result page.",
"example": 1
}
}
}
]
},
"examples": {
"New category and brand": {
"value": {
"Id": 42,
"Name": "Black T-Shirt",
"CategoryPath": "Mens/Clothing/T-Shirts",
"DepartmentId": 1,
"BrandName": "Nike",
"RefId": "31011706925",
"Title": "Black T-Shirt",
"LinkId": "tshirt-black",
"Description": "This is a cool Tshirt",
"ReleaseDate": "2022-01-01T00:00:00",
"IsVisible": true,
"IsActive": true,
"TaxCode": "12345",
"MetaTagDescription": "tshirt black",
"ShowWithoutStock": true,
"LomadeeCampaignCode": null,
"Score": 1
}
},
"Associating it to an existing category and brand": {
"value": {
"Id": 42,
"Name": "Black T-Shirt",
"DepartmentId": 1,
"CategoryId": 2,
"BrandId": 2000000,
"LinkId": "insert-product-test",
"RefId": "310117869",
"IsVisible": true,
"Description": "texto de descrição",
"DescriptionShort": "Utilize o CEP 04548-005 para frete grátis",
"ReleaseDate": "2019-01-01T00:00:00",
"KeyWords": "teste,teste2",
"Title": "product de teste",
"IsActive": true,
"TaxCode": "12345",
"MetaTagDescription": "tag test",
"SupplierId": null,
"ShowWithoutStock": true,
"AdWordsRemarketingCode": null,
"LomadeeCampaignCode": null,
"Score": 1
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 42,
"Name": "Zoom Stefan Janoski Canvas RM SB Varsity Red",
"DepartmentId": 2000089,
"CategoryId": 2000090,
"BrandId": 12121219,
"LinkId": "stefan-janoski-canvas-varsity-red",
"RefId": "sr_1_90",
"IsVisible": true,
"Description": "The Nike Zoom Stefan Janoski Men's Shoe is made with a premium leather upper for superior durability and a flexible midsole for all-day comfort. A tacky gum rubber outsole delivers outstanding traction.",
"DescriptionShort": "The Nike Zoom Stefan Janoski is made with a premium leather.",
"ReleaseDate": "2020-01-01T00:00:00",
"KeyWords": "Zoom,Stefan,Janoski",
"Title": "Zoom Stefan Janoski Canvas RM SB Varsity Re",
"IsActive": true,
"TaxCode": "",
"MetaTagDescription": "The Nike Zoom Stefan Janoski Men's Shoe is made with a premium leather upper for superior durability and a flexible midsole for all-day comfort. A tacky gum rubber outsole delivers outstanding traction.",
"SupplierId": 1,
"ShowWithoutStock": true,
"AdWordsRemarketingCode": "",
"LomadeeCampaignCode": "",
"Score": 1
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Product's unique numerical identifier."
},
"Name": {
"type": "string",
"description": "Product's name. Limited to 150 characters."
},
"DepartmentId": {
"type": "integer",
"description": "Department ID according to the product's category."
},
"CategoryId": {
"type": "integer",
"description": "Category ID associated with this product."
},
"BrandId": {
"type": "integer",
"description": "Brand ID associated with this product."
},
"LinkId": {
"type": "string",
"description": "Slug that will be used to build the product page URL. If it not informed, it will be generated according to the product's name replacing spaces and special characters by hyphens (`-`)."
},
"RefId": {
"type": "string",
"description": "Product Reference Code."
},
"IsVisible": {
"type": "boolean",
"description": "Shows (`true`) or hides (`false`) the product in search result and product pages, but the product can still be added to the shopping cart. Usually applicable for gifts."
},
"Description": {
"type": "string",
"description": "Product description."
},
"DescriptionShort": {
"type": "string",
"description": "Short product description. This information can be displayed on both the product page and the shelf, using the following controls:\r\n Store Framework: `$product.DescriptionShort`.\r\n Legacy CMS Portal: ``."
},
"ReleaseDate": {
"type": "string",
"description": "Used to assist in the ordering of the search result of the site. Using the `O=OrderByReleaseDateDESC` query string, you can pull this value and show the display order by release date. This attribute is also used as a condition for dynamic collections."
},
"KeyWords": {
"type": "string",
"description": "Store Framework: Deprecated. \r\nLegacy CMS Portal: Keywords or synonyms related to the product, separated by comma (`,`). \"Television\", for example, can have a substitute word like \"TV\". This field is important to make your searches more comprehensive."
},
"Title": {
"type": "string",
"description": "Product's title tag, which corresponds to the title of the product page, presented in the browser tab. This field is important for SEO. Limited to 150 characters."
},
"IsActive": {
"type": "boolean",
"description": "Activate (`true`) or inactivate (`false`) product."
},
"TaxCode": {
"type": "string",
"description": "Product tax code, used for tax calculation."
},
"MetaTagDescription": {
"type": "string",
"description": "Brief description of the product for SEO. It's recommended that you don't exceed 150 characters."
},
"SupplierId": {
"type": "integer",
"deprecated": true,
"nullable": true
},
"ShowWithoutStock": {
"type": "boolean",
"description": "If `true`, activates the [Notify Me](https://help.vtex.com/en/tutorial/setting-up-the-notify-me-option--2VqVifQuf6Co2KG048Yu6e) option when the product is out of stock."
},
"AdWordsRemarketingCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true
},
"LomadeeCampaignCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true
},
"Score": {
"type": "integer",
"description": "Value used to set the priority on the search result page."
}
}
}
}
}
}
}
}
},
"/api/catalog_system/pvt/products/{productId}/specification": {
"get": {
"tags": [
"Product specification"
],
"summary": "Get product specifications by product ID",
"description": "Retrieves all specifications of a product by the product's ID.\r\n> 📘 Onboarding guide \r\n>\r\n> Check the new [Catalog onboarding guide](https://developers.vtex.com/vtex-rest-api/docs/catalog-overview). We created this guide to improve the onboarding experience for developers at VTEX. It assembles all documentation on our Developer Portal about Catalog and is organized by focusing on the developer's journey.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Product management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "GetProductSpecification",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"description": "Product's unique numerical identifier.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": [
{
"Value": [
"Iron",
"Plastic"
],
"Id": 30,
"Name": "Material"
}
],
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/GetorUpdateProductSpecification"
}
}
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Product specification"
],
"summary": "Update product specification by product ID",
"description": "Updates the value of a product specification by the product's ID. The specification's ID or name can be used to identify what product specification will be updated. specification fields must be previously created in your Catalog.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Product management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "UpdateProductSpecification",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"description": "Product's unique identifier.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 1
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/GetorUpdateProductSpecification"
}
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
}
},
"deprecated": false
}
},
"/api/catalog/pvt/product/{productId}/specification": {
"get": {
"tags": [
"Product specification"
],
"summary": "Get product specifications and their information by product ID",
"description": "Retrieves information of all specifications of a product by the product's ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Product and SKU Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "GetProductSpecificationbyProductID",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"description": "Product's unique numerical identifier.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": [
{
"Id": 227,
"ProductId": 1,
"FieldId": 33,
"FieldValueId": 135,
"Text": "ValueA"
},
{
"Id": 228,
"ProductId": 1,
"FieldId": 34,
"FieldValueId": 1,
"Text": "Giant"
}
],
"schema": {
"type": "array",
"items": {
"type": "object",
"description": "Object with the product specification information.",
"properties": {
"Id": {
"type": "integer",
"description": "ID of the association of the specification and the product. This ID is used to update or delete the specification."
},
"ProductId": {
"type": "integer",
"description": "Product ID."
},
"FieldId": {
"type": "integer",
"description": "Specification field ID."
},
"FieldValueId": {
"type": "integer",
"description": "Current specification value ID."
},
"Text": {
"type": "string",
"description": "Current specification value text."
}
}
}
}
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Product specification"
],
"summary": "Associate product specification",
"description": "Associates a previously defined specification to a product.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Product and SKU Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"required": true,
"description": "Product's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"FieldId"
],
"properties": {
"FieldId": {
"type": "integer",
"description": "Specification field ID.",
"example": 19
},
"FieldValueId": {
"type": "integer",
"description": "Specification value ID. Mandatory for `FieldTypeId` `5`, `6` and `7`. Must not be used for any other Field types.",
"example": 12
},
"Text": {
"type": "string",
"description": "Value of specification. Only for `FieldTypeId` different from `5`, `6` and `7`.",
"example": "Metal"
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 41,
"FieldId": 19,
"FieldValueId": 1,
"Text": "test"
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "ID of the association of the specification and the product. This ID is used to update or delete the specification."
},
"ProductId": {
"type": "integer",
"description": "Product ID."
},
"FieldId": {
"type": "integer",
"description": "Specification field ID."
},
"FieldValueId": {
"type": "integer",
"description": "Specification value ID. Mandatory for `FieldTypeId` `5`, `6` and `7`. Must not be used for any other field types."
},
"Text": {
"type": "string",
"description": "Value of specification. Only for `FieldTypeId` different from `5`, `6` and `7`."
}
}
}
}
}
}
}
},
"delete": {
"tags": [
"Product specification"
],
"summary": "Delete all product specifications by product ID",
"description": "Deletes all product specifications given a specific product ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Product and SKU Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "DeleteAllProductSpecifications",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"description": "Product's unique numerical identifier.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/product/{productId}/specification/{specificationId}": {
"delete": {
"tags": [
"Product specification"
],
"summary": "Delete a product specification",
"description": "Deletes a product specification given a product ID and a specification ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Product and SKU Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "DeleteaProductSpecification",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"description": "Product's unique numerical identifier.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "specificationId",
"in": "path",
"description": "Product specification's unique numerical identifier.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 7
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/product/{productId}/specificationvalue": {
"put": {
"tags": [
"Product specification"
],
"summary": "Associate product specification using specification name and group name",
"description": "Associates a specification to a product using specification name and group name. Automatically creates the informed group, specification and values if they had not been created before.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Product and SKU Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"required": true,
"description": "Product's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"requestBody": {
"content": {
"application/json": {
"example": {
"FieldName": "Material",
"GroupName": "Composition",
"RootLevelSpecification": true,
"FieldValues": [
"Cotton",
"Polyester"
]
},
"schema": {
"type": "object",
"description": "Object with product specification information.",
"required": [
"FieldName",
"GroupName",
"RootLevelSpecification",
"FieldValues"
],
"properties": {
"FieldName": {
"type": "string",
"description": "Specification name. Limited to 100 characters.",
"example": "Material"
},
"GroupName": {
"type": "string",
"description": "Group name.",
"example": "Composition"
},
"RootLevelSpecification": {
"type": "boolean",
"description": "Root level specification.",
"example": true
},
"FieldValues": {
"type": "array",
"description": "Array of specification values.",
"example": [
"Cotton",
"Polyester"
],
"items": {
"type": "string",
"description": "Specification value.",
"example": "Cotton"
}
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": [
{
"Id": 239,
"ProductId": 1,
"FieldId": 85,
"FieldValueId": 193,
"Text": "Value123"
}
],
"schema": {
"type": "array",
"description": "Array with information of all product specifications.",
"items": {
"type": "object",
"description": "Object with information of the specification.",
"properties": {
"Id": {
"type": "integer",
"description": "ID of the association of the product and the specification."
},
"ProductId": {
"type": "integer",
"description": "Product ID."
},
"FieldId": {
"type": "integer",
"description": "Specification field ID."
},
"FieldValueId": {
"type": "integer",
"description": "Current specification value ID."
},
"Text": {
"type": "string",
"description": "Current specification value text."
}
}
}
}
}
}
}
}
}
},
"/api/catalog_system/pvt/sku/stockkeepingunitids": {
"get": {
"tags": [
"SKU"
],
"summary": "List all SKU IDs",
"description": "Retrieves the IDs of all SKUs in your store. Presents the results with page size and pagination.\r\n> 📘 Onboarding guide \r\n>\r\n> Check the new [Catalog onboarding guide](https://developers.vtex.com/vtex-rest-api/docs/catalog-overview). We created this guide to improve the onboarding experience for developers at VTEX. It assembles all documentation on our Developer Portal about Catalog and is organized by focusing on the developer's journey.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "ListallSKUIDs",
"parameters": [
{
"name": "page",
"in": "query",
"description": "Number of the page from where you need to retrieve SKU IDs.",
"required": true,
"style": "form",
"explode": true,
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "pagesize",
"in": "query",
"description": "Size of the page from where you need retrieve SKU IDs. The maximum value is `1000`.",
"required": true,
"style": "form",
"explode": true,
"schema": {
"type": "integer",
"example": 25
}
},
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"description": "Array composed by SKU IDs, in the search context.",
"items": {
"type": "integer",
"format": "int32",
"description": "SKU ID."
}
},
"example": [
1,
2,
3,
4,
5,
6,
7,
8,
9,
10
]
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pvt/sku/stockkeepingunitbyid/{skuId}": {
"get": {
"tags": [
"SKU"
],
"summary": "Get SKU and context",
"description": "Retrieves context of an SKU.\r\n> 📘 Onboarding guide \r\n>\r\n> Check the new [Catalog onboarding guide](https://developers.vtex.com/vtex-rest-api/docs/catalog-overview). We created this guide to improve the onboarding experience for developers at VTEX. It assembles all documentation on our Developer Portal about Catalog and is organized by focusing on the developer's journey.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SkuContext",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"description": "SKU's unique identifier number.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 2001773
}
},
{
"name": "sc",
"in": "query",
"description": "Trade policy's unique identifier number.",
"required": false,
"style": "form",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GetSKUandContext"
},
"example": {
"Id": 2001773,
"ProductId": 2001426,
"NameComplete": "Tabela de Basquete",
"ComplementName": "",
"ProductName": "Tabela de Basquete",
"ProductDescription": "Tabela de Basquete",
"SkuName": "Tabela de Basquete",
"ProductRefId": "0987",
"TaxCode": "",
"IsActive": true,
"IsTransported": true,
"IsInventoried": true,
"IsGiftCardRecharge": false,
"ImageUrl": "http://ambienteqa.vteximg.com.br/arquivos/ids/168952-55-55/7508800GG.jpg",
"DetailUrl": "/tabela-de-basquete/p",
"CSCIdentification": null,
"BrandId": "2000018",
"BrandName": "MARCA ARGOLO TESTE",
"IsBrandActive": true,
"Dimension": {
"cubicweight": 81.6833,
"height": 65,
"length": 58,
"weight": 10000,
"width": 130
},
"RealDimension": {
"realCubicWeight": 274.1375,
"realHeight": 241,
"realLength": 65,
"realWeight": 9800,
"realWidth": 105
},
"ManufacturerCode": "",
"IsKit": false,
"KitItems": [],
"Services": [],
"Categories": [],
"CategoriesFullPath": [
"/1/10/",
"/1/",
"/20/"
],
"Attachments": [
{
"Id": 3,
"Name": "Mensagem",
"Keys": [
"nome;20",
"foto;40"
],
"Fields": [
{
"FieldName": "nome",
"MaxCaracters": "20",
"DomainValues": "Adalberto,Pedro,João"
},
{
"FieldName": "foto",
"MaxCaracters": "40",
"DomainValues": null
}
],
"IsActive": true,
"IsRequired": false
}
],
"Collections": [],
"SkuSellers": [
{
"SellerId": "1",
"StockKeepingUnitId": 2001773,
"SellerStockKeepingUnitId": "2001773",
"IsActive": true,
"FreightCommissionPercentage": 0,
"ProductCommissionPercentage": 0
}
],
"SalesChannels": [
1,
2,
3,
10
],
"Images": [
{
"ImageUrl": "http://ambienteqa.vteximg.com.br/arquivos/ids/168952/7508800GG.jpg",
"ImageName": "",
"FileId": 168952
},
{
"ImageUrl": "http://ambienteqa.vteximg.com.br/arquivos/ids/168953/7508800_1GG.jpg",
"ImageName": "",
"FileId": 168953
},
{
"ImageUrl": "http://ambienteqa.vteximg.com.br/arquivos/ids/168954/7508800_2GG.jpg",
"ImageName": "",
"FileId": 168954
}
],
"Videos": [
"www.google.com"
],
"SkuSpecifications": [
{
"FieldId": 102,
"FieldName": "Cor",
"FieldValueIds": [
266
],
"FieldValues": [
"Padrão"
],
"IsFilter": false,
"FieldGroupId": 11,
"FieldGroupName": "Especificações"
}
],
"ProductSpecifications": [
{
"FieldId": 7,
"FieldName": "Faixa Etária",
"FieldValueIds": [
58,
56,
55,
52
],
"FieldValues": [
"5 a 6 anos",
"7 a 8 anos",
"9 a 10 anos",
"Acima de 10 anos"
],
"IsFilter": true,
"FieldGroupId": 17,
"FieldGroupName": "NewGroupName 2"
},
{
"FieldId": 23,
"FieldName": "Fabricante",
"FieldValueIds": [],
"FieldValues": [
"Xalingo"
],
"IsFilter": false,
"FieldGroupId": 17,
"FieldGroupName": "NewGroupName 2"
}
],
"ProductClustersIds": "176,187,192,194,211,217,235,242",
"PositionsInClusters": {
"151": 3,
"152": 0,
"158": 1
},
"ProductClusterNames": {
"151": "asdfghj",
"152": "George",
"158": "Coleção halloween"
},
"ProductClusterHighlights": {
"151": "asdfghj",
"152": "George"
},
"ProductCategoryIds": "/59/",
"IsDirectCategoryActive": false,
"ProductGlobalCategoryId": null,
"ProductCategories": {
"59": "Brinquedos"
},
"CommercialConditionId": 1,
"RewardValue": 100.0,
"AlternateIds": {
"Ean": "8781",
"RefId": "878181"
},
"AlternateIdValues": [
"8781",
"878181"
],
"EstimatedDateArrival": null,
"MeasurementUnit": "un",
"UnitMultiplier": 2.0000,
"InformationSource": "Indexer",
"ModalType": null,
"KeyWords": "basquete, tabela",
"ReleaseDate": "2020-01-06T00:00:00",
"ProductIsVisible": true,
"ShowIfNotAvailable": true,
"IsProductActive": true,
"ProductFinalScore": 0
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog/pvt/stockkeepingunit": {
"get": {
"tags": [
"SKU"
],
"summary": "Get SKU by RefId",
"description": "Retrieves information about a specific SKU by its `RefId`.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "RefId",
"in": "query",
"required": true,
"description": "SKU reference ID.",
"schema": {
"type": "string",
"example": "1"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 1,
"ProductId": 1,
"IsActive": true,
"Name": "Royal Canin Feline Urinary 500g",
"RefId": "0001",
"PackagedHeight": 6.0,
"PackagedLength": 24.0,
"PackagedWidth": 14.0,
"PackagedWeightKg": 550.0,
"Height": 0.0,
"Length": 0.0,
"Width": 0.0,
"WeightKg": 0.0,
"CubicWeight": 1.0,
"IsKit": false,
"CreationDate": "2020-03-12T15:42:00",
"RewardValue": 0.0,
"EstimatedDateArrival": null,
"ManufacturerCode": "",
"CommercialConditionId": 1,
"MeasurementUnit": "un",
"UnitMultiplier": 1.0,
"ModalType": null,
"KitItensSellApart": false,
"Videos": []
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "SKU unique identifier."
},
"ProductId": {
"type": "integer",
"description": "ID of the product associated with this SKU."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the SKU is active (`true`) or not (`false`)."
},
"ActivateIfPossible": {
"type": "boolean",
"description": "When set to `true`, this attribute will automatically update the SKU as active once associated with an image or an active component."
},
"Name": {
"type": "string",
"description": "SKU name, meaning the variation of the previously added product. For example: **Product** - _Fridge_, **SKU** - _110V_."
},
"RefId": {
"type": "string",
"description": "Reference code used internally for organizational purposes. Must be unique. Required only if `Ean` is not informed, but can be used alongside `Ean` as well."
},
"Ean": {
"type": "string",
"description": "EAN code. Required only if `RefId` is not informed, but can be used alongside `RefId` as well."
},
"PackagedHeight": {
"type": "number",
"description": "Height used for shipping calculation."
},
"PackagedLength": {
"type": "number",
"description": "Length used for shipping calculation."
},
"PackagedWidth": {
"type": "number",
"description": "Width used for shipping calculation."
},
"PackagedWeightKg": {
"type": "integer",
"description": "Weight used for shipping calculation, in the measurement unit [configured in the store](https://help.vtex.com/en/tutorial/filling-in-system-settings--tutorials_269), which by default is in grams."
},
"Height": {
"type": "number",
"description": "SKU real height."
},
"Length": {
"type": "number",
"description": "SKU real length."
},
"Width": {
"type": "number",
"description": "SKU real width."
},
"WeightKg": {
"type": "number",
"description": "Weight of the SKU in the measurement [configured in the store](https://help.vtex.com/en/tutorial/filling-in-system-settings--tutorials_269), which by default is in grams."
},
"CubicWeight": {
"type": "number",
"description": "[Cubic weight](https://help.vtex.com/en/tutorial/understanding-the-cubic-weight-factor--tutorials_128)."
},
"IsKit": {
"type": "boolean",
"description": "Defines whether the SKU is made up of one or more SKUs (part of a kit) (`true`) or not (`false`). Must be enabled if you are adding a kit. Once activated, this definition cannot be reverted."
},
"CreationDate": {
"type": "string",
"description": "Date and time of the SKU's creation."
},
"RewardValue": {
"type": "number",
"description": "Credit that the customer receives when finalizing an order that includes the SKU. By filling this field out with `1`, the customer receives credit on the site in the selected currency, e.g. U$ 1."
},
"EstimatedDateArrival": {
"type": "string",
"description": "SKU estimated arrival date in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format, when the product is on pre-sale. You must take into consideration both the launch date and the freight calculation for the arrival date.",
"nullable": true
},
"ManufacturerCode": {
"type": "string",
"description": "Identifier provided by the manufacturers to identify their product. This field should be filled in if the product has a specific manufacturer's code."
},
"CommercialConditionId": {
"type": "integer",
"description": "Commercial condition ID, used to define SKU specific promotions or installment rules. In case of no specific condition, use `1` (default value). This field does not accept `0`. Learn more at [Registering a commercial condition](https://help.vtex.com/tutorial/registering-a-commercial-condition--tutorials_445).",
"default": 1
},
"MeasurementUnit": {
"type": "string",
"description": "Measurement unit. This field should only be used when it is necessary to convert the unit of measure for sale. For example, if a product is sold in boxes, but customers want to buy per square meter (m²). In common cases, use `\"un\"`."
},
"UnitMultiplier": {
"type": "number",
"description": "Multiple number of SKU. If the multiplier is 5.0000, the product can be added in multiple quantities of 5, 10, 15, 20, onward."
},
"ModalType": {
"type": "string",
"nullable": true,
"description": "Links an unusual type of SKU that needs special transportation, such as meat, glass, or a mattress, to a carrier specialized in delivering it. This field should be filled in with the name of the modal (e.g. \"Chemicals\" or \"Refrigerated products\"). To learn more about this feature, read our articles [How the modal works](https://help.vtex.com/en/tutorial/how-does-the-modal-work--tutorials_125) and [Setting up modal for carriers](https://help.vtex.com/en/tutorial/configure-modal--3jhLqxuPhuiq24UoykCcqy)."
},
"KitItensSellApart": {
"type": "boolean",
"description": "Defines if kit components can be sold apart."
},
"Videos": {
"type": "array",
"description": "Videos URLs.",
"items": {
"type": "string",
"description": "Video URL."
}
}
}
}
}
}
}
}
},
"post": {
"tags": [
"SKU"
],
"summary": "Create SKU",
"description": "Creates a new SKU.\r\n\r\nIf there is a need to create a new SKU with a specific custom ID, specify the `Id` (integer) in the request. Otherwise, VTEX will generate the ID automatically.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"ProductId",
"Name",
"PackagedHeight",
"PackagedLength",
"PackagedWidth",
"PackagedWeightKg"
],
"properties": {
"Id": {
"type": "integer",
"description": "SKU unique identifier. If not informed, it will be automatically generated by VTEX.",
"example": 1
},
"ProductId": {
"type": "integer",
"description": "ID of the product associated with this SKU.",
"example": 42
},
"IsActive": {
"type": "boolean",
"description": "Defines if the SKU is active (`true`) or not (`false`). During SKU creation, do not set this field as `true` or you will receive a `400 Bad Request` error. You should activate the SKU afterwards, as explained in [Activating an SKU](https://developers.vtex.com/docs/guides/skus#activating-an-sku).",
"example": false
},
"ActivateIfPossible": {
"type": "boolean",
"description": "When set to `true`, this attribute will automatically update the SKU as active once associated with an image or an active component. We recommend setting it to `true`, unless you plan to have an internal workflow to manually activate SKUs.",
"example": true
},
"Name": {
"type": "string",
"description": "SKU name, meaning the variation of the previously added product. For example: **Product** - _Fridge_, **SKU** - _110V_. Limited to 200 characters.",
"example": "Size 10"
},
"RefId": {
"type": "string",
"description": "Reference code used internally for organizational purposes. Must be unique. Required only if `Ean` is not informed, but can be used alongside `Ean` as well.",
"example": "B096QW8Y8Z"
},
"Ean": {
"type": "string",
"description": "EAN code. Required only if `RefId` is not informed, but can be used alongside `RefId` as well.",
"example": "8949461894984"
},
"PackagedHeight": {
"type": "number",
"description": "Height used for shipping calculation.",
"example": 10
},
"PackagedLength": {
"type": "number",
"description": "Length used for shipping calculation.",
"example": 10
},
"PackagedWidth": {
"type": "number",
"description": "Width used for shipping calculation.",
"example": 10
},
"PackagedWeightKg": {
"type": "integer",
"description": "Weight used for shipping calculation, in the measurement [configured in the store](https://help.vtex.com/en/tutorial/filling-in-system-settings--tutorials_269), which by default is in grams. Do not fill in this field with `0` or `null`, because this might result in shipping issues.",
"example": 10
},
"Height": {
"type": "number",
"description": "SKU real height.",
"example": 1.0
},
"Length": {
"type": "number",
"description": "SKU real length.",
"example": 1.0
},
"Width": {
"type": "number",
"description": "SKU real width.",
"example": 1.0
},
"WeightKg": {
"type": "number",
"description": "Weight of the SKU in the measurement [configured in the store](https://help.vtex.com/en/tutorial/filling-in-system-settings--tutorials_269), which by default is in grams.",
"example": 1.0
},
"CubicWeight": {
"type": "number",
"description": "[Cubic weight](https://help.vtex.com/en/tutorial/understanding-the-cubic-weight-factor--tutorials_128).",
"example": 0.1667
},
"IsKit": {
"type": "boolean",
"description": "Defines whether the SKU is made up of one or more SKUs (part of a kit) (`true`) or not (`false`). Must be enabled if you are adding a kit. Once activated, this definition cannot be reverted.",
"example": false
},
"CreationDate": {
"type": "string",
"description": "Date and time of the SKU's creation.",
"example": "2020-01-25T15:51:29.2614605"
},
"RewardValue": {
"type": "number",
"description": "Credit that the customer receives when finalizing an order that includes the SKU. By filling this field out with `1`, the customer receives credit on the site in the selected currency, e.g. U$ 1.",
"example": 1.0
},
"EstimatedDateArrival": {
"type": "string",
"nullable": true,
"description": "To add the product as pre-sale, enter the product estimated arrival date in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format. You must take into consideration both the launch date and the freight calculation for the arrival date.",
"example": null
},
"ManufacturerCode": {
"type": "string",
"description": "Identifier provided by the manufacturers to identify their product. This field should be filled in if the product has a specific manufacturer's code.",
"example": "123"
},
"CommercialConditionId": {
"type": "integer",
"description": "Commercial condition ID, used to define SKU specific promotions or installment rules. In case of no specific condition, use `1` (default value). This field does not accept `0`. Learn more at [Registering a commercial condition](https://help.vtex.com/tutorial/registering-a-commercial-condition--tutorials_445).",
"default": 1
},
"MeasurementUnit": {
"type": "string",
"description": "Measurement unit. This field should only be used when it is necessary to convert the unit of measure for sale. For example, if a product is sold in boxes, but customers want to buy per square meter (m²). In common cases, use `\"un\"`.",
"example": "un"
},
"UnitMultiplier": {
"type": "number",
"description": "Multiple number of SKU. If the multiplier is 5.0000, the product can be added in multiple quantities of 5, 10, 15, 20, onward.",
"example": 2.0000
},
"ModalType": {
"type": "string",
"nullable": true,
"description": "Links an unusual type of SKU that needs special transportation, such as meat, glass, or a mattress, to a carrier specialized in delivering it. This field should be filled in with the name of the modal (e.g. \"Chemicals\" or \"Refrigerated products\"). To learn more about this feature, read our articles [How the modal works](https://help.vtex.com/en/tutorial/how-does-the-modal-work--tutorials_125) and [Setting up modal for carriers](https://help.vtex.com/en/tutorial/configure-modal--3jhLqxuPhuiq24UoykCcqy).",
"example": null
},
"KitItensSellApart": {
"type": "boolean",
"description": "Defines if kit components can be sold apart.",
"example": false
},
"Videos": {
"type": "array",
"description": "Videos URLs.",
"items": {
"type": "string",
"description": "URL",
"example": "https://www.youtube.com/"
},
"example": [
"https://www.youtube.com/"
]
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 70,
"ProductId": 42,
"IsActive": false,
"ActivateIfPossible": false,
"Name": "Size 10",
"RefId": "B096QW8Y8Z",
"Ean": "8949461894984",
"PackagedHeight": 10.0,
"PackagedLength": 10.0,
"PackagedWidth": 10.0,
"PackagedWeightKg": 10.0,
"Height": 1.0,
"Length": 1.0,
"Width": 1.0,
"WeightKg": 1.0,
"CubicWeight": 0.1667,
"IsKit": false,
"CreationDate": "2020-01-25T15:51:29.2614605",
"RewardValue": 0.0,
"EstimatedDateArrival": null,
"ManufacturerCode": "",
"CommercialConditionId": 1,
"MeasurementUnit": "un",
"UnitMultiplier": 2.0000,
"ModalType": null,
"KitItensSellApart": false,
"Videos": [
"https://www.youtube.com/"
]
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "SKU unique identifier."
},
"ProductId": {
"type": "integer",
"description": "ID of the product associated with this SKU."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the SKU is active (`true`) or not (`false`)."
},
"ActivateIfPossible": {
"type": "boolean",
"description": "When set to `true`, this attribute will automatically update the SKU as active once associated with an image or an active component."
},
"Name": {
"type": "string",
"description": "SKU name, meaning the variation of the previously added product. For example: **Product** - _Fridge_, **SKU** - _110V_."
},
"RefId": {
"type": "string",
"description": "Reference code used internally for organizational purposes. Must be unique. Required only if `Ean` is not informed, but can be used alongside `Ean` as well."
},
"Ean": {
"type": "string",
"description": "EAN code. Required only if `RefId` is not informed, but can be used alongside `RefId` as well."
},
"PackagedHeight": {
"type": "number",
"description": "Height used for shipping calculation."
},
"PackagedLength": {
"type": "number",
"description": "Length used for shipping calculation."
},
"PackagedWidth": {
"type": "number",
"description": "Width used for shipping calculation."
},
"PackagedWeightKg": {
"type": "integer",
"description": "Weight used for shipping calculation, in the measurement unit [configured in the store](https://help.vtex.com/en/tutorial/filling-in-system-settings--tutorials_269), which by default is in grams."
},
"Height": {
"type": "number",
"description": "SKU real height."
},
"Length": {
"type": "number",
"description": "SKU real length."
},
"Width": {
"type": "number",
"description": "SKU real width."
},
"WeightKg": {
"type": "number",
"description": "Weight of the SKU in the measurement unit [configured in the store](https://help.vtex.com/en/tutorial/filling-in-system-settings--tutorials_269), which by default is in grams."
},
"CubicWeight": {
"type": "number",
"description": "[Cubic weight](https://help.vtex.com/en/tutorial/understanding-the-cubic-weight-factor--tutorials_128)."
},
"IsKit": {
"type": "boolean",
"description": "Defines whether the SKU is made up of one or more SKUs (part of a kit) (`true`) or not (`false`). Must be enabled if you are adding a kit. Once activated, this definition cannot be reverted."
},
"CreationDate": {
"type": "string",
"description": "Date and time of the SKU's creation."
},
"RewardValue": {
"type": "number",
"description": "Credit that the customer receives when finalizing an order that includes the SKU. By filling this field out with `1`, the customer receives credit on the site in the selected currency, e.g. U$ 1."
},
"EstimatedDateArrival": {
"type": "string",
"description": "SKU estimated arrival date in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format, when the product is on pre-sale. You must take into consideration both the launch date and the freight calculation for the arrival date.",
"nullable": true
},
"ManufacturerCode": {
"type": "string",
"description": "Identifier provided by the manufacturers to identify their product. This field should be filled in if the product has a specific manufacturer's code."
},
"CommercialConditionId": {
"type": "integer",
"description": "Commercial condition ID, used to define SKU specific promotions or installment rules. In case of no specific condition, use `1` (default value). This field does not accept `0`. Learn more at [Registering a commercial condition](https://help.vtex.com/tutorial/registering-a-commercial-condition--tutorials_445).",
"default": 1
},
"MeasurementUnit": {
"type": "string",
"description": "Measurement unit. This field should only be used when it is necessary to convert the unit of measure for sale. For example, if a product is sold in boxes, but customers want to buy per square meter (m²). In common cases, use `'un'`."
},
"UnitMultiplier": {
"type": "number",
"description": "Multiple number of SKU. If the multiplier is 5.0000, the product can be added in multiple quantities of 5, 10, 15, 20, onward."
},
"ModalType": {
"type": "string",
"nullable": true,
"description": "Links an unusual type of SKU that needs special transportation, such as meat, glass, or a mattress, to a carrier specialized in delivering it. This field should be filled in with the name of the modal (e.g. \"Chemicals\" or \"Refrigerated products\"). To learn more about this feature, read our articles [How the modal works](https://help.vtex.com/en/tutorial/how-does-the-modal-work--tutorials_125) and [Setting up modal for carriers](https://help.vtex.com/en/tutorial/configure-modal--3jhLqxuPhuiq24UoykCcqy)."
},
"KitItensSellApart": {
"type": "boolean",
"description": "Defines if kit components can be sold apart."
},
"Videos": {
"type": "array",
"description": "Videos URLs.",
"items": {
"type": "string",
"description": "Video URL."
}
}
}
}
}
}
}
}
}
},
"/api/catalog_system/pvt/sku/stockkeepingunitidbyrefid/{refId}": {
"get": {
"tags": [
"SKU"
],
"summary": "Get SKU ID by reference ID",
"description": "Retrieves an SKU ID by the SKU's reference ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SkuIdbyRefId",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "RefId",
"in": "path",
"description": "SKU reference ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "0001"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "string",
"description": "SKU ID."
},
"example": "1"
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pvt/sku/stockkeepingunitbyalternateId/{alternateId}": {
"get": {
"tags": [
"SKU"
],
"summary": "Get SKU by alternate ID",
"description": "Retrieves an SKU by its alternate ID, which can be the EAN or the reference ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SkubyAlternateId",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "alternateId",
"in": "path",
"description": "Product EAN or `RefId`.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 10
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GetSKUAltID"
},
"example": {
"Id": 310118450,
"ProductId": 2,
"NameComplete": "Caixa de Areia Azul Petmate sku test",
"ComplementName": "",
"ProductName": "Caixa de Areia Azul Petmate",
"ProductDescription": "",
"ProductRefId": "",
"TaxCode": "",
"SkuName": "sku test",
"IsActive": true,
"IsTransported": true,
"IsInventoried": true,
"IsGiftCardRecharge": false,
"ImageUrl": "https://lojadobreno.vteximg.com.br/arquivos/ids/155451-55-55/caixa-areia-azul-petmate.jpg?v=637139451191670000",
"DetailUrl": "/caixa-de-areia-azul-petmate/p",
"CSCIdentification": null,
"BrandId": "2000005",
"BrandName": "Petmate",
"IsBrandActive": true,
"Dimension": {
"cubicweight": 0.2083,
"height": 10.0000,
"length": 10.0000,
"weight": 10.0000,
"width": 10.0000
},
"RealDimension": {
"realCubicWeight": 0.000,
"realHeight": 0.0,
"realLength": 0.0,
"realWeight": 0.0,
"realWidth": 0.0
},
"ManufacturerCode": "123",
"IsKit": false,
"KitItems": [],
"Services": [],
"Categories": [],
"CategoriesFullPath": [
"/3/15/",
"/3/",
"/1/"
],
"Attachments": [],
"Collections": [],
"SkuSellers": [
{
"SellerId": "1",
"StockKeepingUnitId": 310118450,
"SellerStockKeepingUnitId": "310118450",
"IsActive": true,
"FreightCommissionPercentage": 0.0,
"ProductCommissionPercentage": 0.0
}
],
"SalesChannels": [
1,
3
],
"Images": [
{
"ImageUrl": "https://lojadobreno.vteximg.com.br/arquivos/ids/155451/caixa-areia-azul-petmate.jpg?v=637139451191670000",
"ImageName": null,
"FileId": 155451
}
],
"Videos": [],
"SkuSpecifications": [],
"ProductSpecifications": [],
"ProductClustersIds": "151,158",
"PositionsInClusters": {
"151": 1,
"158": 2
},
"ProductClusterNames": {
"151": "asdfghj",
"158": "Coleção halloween"
},
"ProductClusterHighlights": {
"151": "asdfghj"
},
"ProductCategoryIds": "/3/15/",
"IsDirectCategoryActive": true,
"ProductGlobalCategoryId": 5000,
"ProductCategories": {
"15": "Caixa de Areia",
"3": "Higiene",
"1": "Alimentação"
},
"CommercialConditionId": 1,
"RewardValue": 0.0,
"AlternateIds": {
"RefId": "1"
},
"AlternateIdValues": [
"1"
],
"EstimatedDateArrival": null,
"MeasurementUnit": "un",
"UnitMultiplier": 1.0000,
"InformationSource": null,
"ModalType": null,
"KeyWords": "",
"ReleaseDate": "2020-01-06T00:00:00Z",
"ProductIsVisible": true,
"ShowIfNotAvailable": true,
"IsProductActive": true,
"ProductFinalScore": 0
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pvt/sku/stockkeepingunitByProductId/{productId}": {
"get": {
"tags": [
"SKU"
],
"summary": "Get SKU list by product ID",
"description": "Retrieves a list with the SKUs related to a product by the product's ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SkulistbyProductId",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"description": "Product's unique numerical identifier.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"description": "Array with information of all SKUs with the same product ID.",
"items": {
"$ref": "#/components/schemas/SkulistbyProductId"
}
},
"example": [
{
"IsPersisted": true,
"IsRemoved": false,
"Id": 2000035,
"ProductId": 2000024,
"IsActive": true,
"Name": "33 - Preto",
"Height": 8,
"RealHeight": null,
"Width": 15,
"RealWidth": null,
"Length": 8,
"RealLength": null,
"WeightKg": 340,
"RealWeightKg": null,
"ModalId": 1,
"RefId": "",
"CubicWeight": 0.2,
"IsKit": false,
"IsDynamicKit": null,
"InternalNote": null,
"DateUpdated": "2015-11-06T19:10:00",
"RewardValue": 0.01,
"CommercialConditionId": 1,
"EstimatedDateArrival": null,
"FlagKitItensSellApart": false,
"ManufacturerCode": "",
"ReferenceStockKeepingUnitId": null,
"Position": 0,
"EditionSkuId": null,
"ApprovedAdminId": 123,
"EditionAdminId": 123,
"ActivateIfPossible": true,
"SupplierCode": null,
"MeasurementUnit": "un",
"UnitMultiplier": 2.0000,
"IsInventoried": null,
"IsTransported": null,
"IsGiftCardRecharge": null,
"ModalType": null
}
]
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pub/sku/stockkeepingunitidsbyrefids": {
"post": {
"tags": [
"SKU"
],
"summary": "Retrieve SKU ID list by reference ID list",
"description": "Given a list of reference IDs, this endpoint returns a list with the corresponding SKU IDs.\r\n\r\n>⚠️ The list of reference IDs in the request body cannot have repeated reference IDs, or the API will return an error 500.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SkuIdlistbyRefIdlist",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "array",
"description": "Array with SKU reference IDs from which you need to retrieve the related SKU IDs. Do not repeat values in the array, or the API will return an error 500.",
"items": {
"type": "string",
"description": "SKU reference ID.",
"example": "799"
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"description": "Object composed by a list of SKU IDs related to each reference ID list searched. Structure: \"{RefId}\": \"{SkuId}\".",
"additionalProperties": {
"type": "string",
"description": "Reference ID."
}
},
"example": {
"123": "435",
"D25133K-B2": "4351",
"14-556": "3155",
"DCF880L2-BR": "4500"
}
}
}
},
"500": {
"description": "Internal Server Error"
}
},
"deprecated": false
}
},
"/api/catalog/pvt/stockkeepingunit/{skuId}": {
"get": {
"tags": [
"SKU"
],
"summary": "Get SKU",
"description": "Retrieves a specific SKU by its ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "Sku",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"description": "SKU unique identifier number.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 70,
"ProductId": 42,
"IsActive": false,
"ActivateIfPossible": false,
"Name": "Size 10",
"RefId": "B096QW8Y8Z",
"PackagedHeight": 10.0,
"PackagedLength": 10.0,
"PackagedWidth": 10.0,
"PackagedWeightKg": 10.0,
"Height": 1.0,
"Length": 1.0,
"Width": 1.0,
"WeightKg": 1.0,
"CubicWeight": 0.1667,
"IsKit": false,
"CreationDate": "2020-01-25T15:51:29.2614605",
"RewardValue": 0.0,
"EstimatedDateArrival": null,
"ManufacturerCode": "",
"CommercialConditionId": 1,
"MeasurementUnit": "un",
"UnitMultiplier": 2.0000,
"ModalType": null,
"KitItensSellApart": false,
"Videos": [
"https://www.youtube.com/"
]
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "SKU unique identifier."
},
"ProductId": {
"type": "integer",
"description": "ID of the product associated with this SKU."
},
"IsActive": {
"type": "boolean",
"description": "Shows if the SKU is active (`true`) or not (`false`)."
},
"ActivateIfPossible": {
"type": "boolean",
"description": "When set to `true`, this attribute will automatically update the SKU as active once associated with an image or an active component."
},
"Name": {
"type": "string",
"description": "SKU name, meaning the variation of the previously added product. For example: **Product** - _Fridge_, **SKU** - _110V_."
},
"RefId": {
"type": "string",
"description": "Reference code used internally for organizational purposes. Must be unique. It is not required only if EAN code already exists. If not, this field must be provided."
},
"PackagedHeight": {
"type": "number",
"description": "Height used for shipping calculation."
},
"PackagedLength": {
"type": "number",
"description": "Length used for shipping calculation."
},
"PackagedWidth": {
"type": "number",
"description": "Width used for shipping calculation."
},
"PackagedWeightKg": {
"type": "integer",
"description": "Weight used for shipping calculation, in the measurement unit [configured in the store](https://help.vtex.com/en/tutorial/filling-in-system-settings--tutorials_269), which by default is in grams."
},
"Height": {
"type": "number",
"description": "SKU real height."
},
"Length": {
"type": "number",
"description": "SKU real length."
},
"Width": {
"type": "number",
"description": "SKU real width."
},
"WeightKg": {
"type": "number",
"description": "Weight of the SKU in the measurement [configured in the store](https://help.vtex.com/en/tutorial/filling-in-system-settings--tutorials_269), which by default is in grams."
},
"CubicWeight": {
"type": "number",
"description": "[Cubic weight](https://help.vtex.com/en/tutorial/understanding-the-cubic-weight-factor--tutorials_128)."
},
"IsKit": {
"type": "boolean",
"description": "Defines whether the SKU is made up of one or more SKUs (part of a kit) (`true`) or not (`false`). Must be enabled if you are adding a kit. Once activated, this definition cannot be reverted."
},
"CreationDate": {
"type": "string",
"description": "Date and time of the SKU's creation."
},
"RewardValue": {
"type": "number",
"description": "Credit that the customer receives when finalizing an order that includes the SKU. By filling this field out with `1`, the customer receives credit on the site in the selected currency, e.g. U$ 1."
},
"EstimatedDateArrival": {
"type": "string",
"nullable": true,
"description": "SKU estimated arrival date in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format, when the product is on pre-sale. You must take into consideration both the launch date and the freight calculation for the arrival date."
},
"ManufacturerCode": {
"type": "string",
"description": "Identifier provided by the manufacturers to identify their product. This field should be filled in if the product has a specific manufacturer's code."
},
"CommercialConditionId": {
"type": "integer",
"description": "Commercial condition ID, used to define SKU specific promotions or installment rules. In case of no specific condition, use `1` (default value). This field does not accept `0`. Learn more at [Registering a commercial condition](https://help.vtex.com/tutorial/registering-a-commercial-condition--tutorials_445)."
},
"MeasurementUnit": {
"type": "string",
"description": "Measurement unit. This field should only be used when it is necessary to convert the unit of measure for sale. For example, if a product is sold in boxes, but customers want to buy per square meter (m²). In common cases, use `\"un\"`."
},
"UnitMultiplier": {
"type": "number",
"description": "Multiple number of SKU. If the multiplier is 5.0000, the product can be added in multiple quantities of 5, 10, 15, 20, onward."
},
"ModalType": {
"type": "string",
"nullable": true,
"description": "Links an unusual type of SKU that needs special transportation, such as meat, glass, or a mattress, to a carrier specialized in delivering it. This field should be filled in with the name of the modal (e.g. \"Chemicals\" or \"Refrigerated products\"). To learn more about this feature, read our articles [How the modal works](https://help.vtex.com/en/tutorial/how-does-the-modal-work--tutorials_125) and [Setting up modal for carriers](https://help.vtex.com/en/tutorial/configure-modal--3jhLqxuPhuiq24UoykCcqy)."
},
"KitItensSellApart": {
"type": "boolean",
"description": "Defines if kit components can be sold apart."
},
"Videos": {
"type": "array",
"description": "Videos URLs.",
"items": {
"type": "string",
"description": "Video URL."
}
}
}
}
}
}
}
},
"deprecated": false
},
"put": {
"tags": [
"SKU"
],
"summary": "Update SKU",
"description": "Updates an existing SKU.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"ProductId",
"Name",
"PackagedHeight",
"PackagedLength",
"PackagedWidth",
"PackagedWeightKg",
"IsActive"
],
"properties": {
"ProductId": {
"type": "integer",
"description": "ID of the product associated with this SKU.",
"example": 42
},
"IsActive": {
"type": "boolean",
"description": "Although the inclusion of the IsActive field is optional, not including it will result in the field's value being interpreted as null, leading to the deactivation of the SKU. When updating the integration with the Catalog, send (`true`) If you wish to make sure the SKU is active. Otherwise send (`false`).",
"example": false
},
"ActivateIfPossible": {
"type": "boolean",
"description": "When set to `true`, this attribute will automatically update the SKU as active once associated with an image or an active component.",
"example": false
},
"Name": {
"type": "string",
"description": "SKU name, meaning the variation of the previously added product. For example: **Product** - _Fridge_, **SKU** - _110V_.",
"example": "Size 10"
},
"RefId": {
"type": "string",
"description": "Reference code used internally for organizational purposes. Must be unique. It is not required only if EAN code already exists. If not, this field must be provided.",
"example": "B096QW8Y8Z"
},
"PackagedHeight": {
"type": "number",
"description": "Height used for shipping calculation.",
"example": 10
},
"PackagedLength": {
"type": "number",
"description": "Length used for shipping calculation.",
"example": 10
},
"PackagedWidth": {
"type": "number",
"description": "Width used for shipping calculation.",
"example": 10
},
"PackagedWeightKg": {
"type": "integer",
"description": "Weight used for shipping calculation, in the measurement [configured in the store](https://help.vtex.com/en/tutorial/filling-in-system-settings--tutorials_269), which by default is in grams. Do not fill in this field with `0` or `null`, because this might result in shipping issues.",
"example": 10
},
"Height": {
"type": "number",
"description": "SKU real height.",
"example": 1.0
},
"Length": {
"type": "number",
"description": "SKU real length.",
"example": 1.0
},
"Width": {
"type": "number",
"description": "SKU real width.",
"example": 1.0
},
"WeightKg": {
"type": "number",
"description": "Weight of the SKU in the measurement [configured in the store](https://help.vtex.com/en/tutorial/filling-in-system-settings--tutorials_269), which by default is in grams.",
"example": 1.0
},
"CubicWeight": {
"type": "number",
"description": "[Cubic weight](https://help.vtex.com/en/tutorial/understanding-the-cubic-weight-factor--tutorials_128).",
"example": 0.1667
},
"IsKit": {
"type": "boolean",
"description": "Defines whether the SKU is made up of one or more SKUs (part of a kit) (`true`) or not (`false`). Must be enabled if you are adding a kit. Once activated, this definition cannot be reverted.",
"example": false
},
"CreationDate": {
"type": "string",
"description": "Date and time of the SKU's creation.",
"example": "2020-01-25T15:51:00"
},
"RewardValue": {
"type": "number",
"description": "Credit that the customer receives when finalizing an order that includes the SKU. By filling this field out with `1`, the customer receives credit on the site in the selected currency, e.g. U$ 1.",
"example": 1.0
},
"EstimatedDateArrival": {
"type": "string",
"nullable": true,
"description": "To add the product as pre-sale, enter the product estimated arrival date in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format. You must take into consideration both the launch date and the freight calculation for the arrival date.",
"example": null
},
"ManufacturerCode": {
"type": "string",
"description": "Identifier provided by the manufacturers to identify their product. This field should be filled in if the product has a specific manufacturer's code.",
"example": "123"
},
"CommercialConditionId": {
"type": "integer",
"description": "Commercial condition ID, used to define SKU specific promotions or installment rules. In case of no specific condition, use `1` (default value). This field does not accept `0`. Learn more at [Registering a commercial condition](https://help.vtex.com/tutorial/registering-a-commercial-condition--tutorials_445).",
"example": 1
},
"MeasurementUnit": {
"type": "string",
"description": "Measurement unit. This field should only be used when it is necessary to convert the unit of measure for sale. For example, if a product is sold in boxes, but customers want to buy per square meter (m²). In common cases, use `\"un\"`.",
"example": "un"
},
"UnitMultiplier": {
"type": "number",
"description": "Multiple number of SKU. If the multiplier is 5.0000, the product can be added in multiple quantities of 5, 10, 15, 20, onward.",
"example": 2.0000
},
"ModalType": {
"type": "string",
"nullable": true,
"description": "Links an unusual type of SKU that needs special transportation, such as meat, glass, or a mattress, to a carrier specialized in delivering it. This field should be filled in with the name of the modal (e.g. \"Chemicals\" or \"Refrigerated products\"). To learn more about this feature, read our articles [How the modal works](https://help.vtex.com/en/tutorial/how-does-the-modal-work--tutorials_125) and [Setting up modal for carriers](https://help.vtex.com/en/tutorial/configure-modal--3jhLqxuPhuiq24UoykCcqy).",
"example": null
},
"KitItensSellApart": {
"type": "boolean",
"description": "Defines if kit components can be sold apart.",
"example": false
},
"Videos": {
"type": "array",
"description": "Videos URLs.",
"items": {
"type": "string",
"description": "Video URL.",
"example": "https://www.youtube.com/"
},
"example": [
"https://www.youtube.com/"
]
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 70,
"ProductId": 42,
"IsActive": false,
"ActivateIfPossible": false,
"Name": "Size 10",
"RefId": "B096QW8Y8Z",
"PackagedHeight": 10.0,
"PackagedLength": 10.0,
"PackagedWidth": 10.0,
"PackagedWeightKg": 10.0,
"Height": 1.0,
"Length": 1.0,
"Width": 1.0,
"WeightKg": 1.0,
"CubicWeight": 0.1667,
"IsKit": false,
"CreationDate": "2020-01-25T15:51:29.2614605",
"RewardValue": 0.0,
"EstimatedDateArrival": null,
"ManufacturerCode": "",
"CommercialConditionId": 1,
"MeasurementUnit": "un",
"UnitMultiplier": 2.0000,
"ModalType": null,
"KitItensSellApart": false,
"Videos": [
"https://www.youtube.com/"
]
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "SKU unique identifier."
},
"ProductId": {
"type": "integer",
"description": "ID of the product associated with this SKU."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the SKU is active (`true`) or not (`false`)."
},
"ActivateIfPossible": {
"type": "boolean",
"description": "When set to `true`, this attribute will automatically update the SKU as active once associated with an image or an active component."
},
"Name": {
"type": "string",
"description": "SKU name, meaning the variation of the previously added product. For example: **Product** - _Fridge_, **SKU** - _110V_."
},
"RefId": {
"type": "string",
"description": "Reference code used internally for organizational purposes. Must be unique. It is not required only if EAN code already exists. If not, this field must be provided."
},
"PackagedHeight": {
"type": "number",
"description": "Height used for shipping calculation."
},
"PackagedLength": {
"type": "number",
"description": "Length used for shipping calculation."
},
"PackagedWidth": {
"type": "number",
"description": "Width used for shipping calculation."
},
"PackagedWeightKg": {
"type": "integer",
"description": "Weight used for shipping calculation, in the measurement unit [configured in the store](https://help.vtex.com/en/tutorial/filling-in-system-settings--tutorials_269), which by default is in grams."
},
"Height": {
"type": "number",
"description": "SKU real height."
},
"Length": {
"type": "number",
"description": "SKU real length."
},
"Width": {
"type": "number",
"description": "SKU real width."
},
"WeightKg": {
"type": "number",
"description": "Weight of the SKU in the measurement unit [configured in the store](https://help.vtex.com/en/tutorial/filling-in-system-settings--tutorials_269), which by default is in grams."
},
"CubicWeight": {
"type": "number",
"description": "[Cubic weight](https://help.vtex.com/en/tutorial/understanding-the-cubic-weight-factor--tutorials_128)."
},
"IsKit": {
"type": "boolean",
"description": "Defines whether the SKU is made up of one or more SKUs (part of a kit) (`true`) or not (`false`). Must be enabled if you are adding a kit. Once activated, this definition cannot be reverted."
},
"CreationDate": {
"type": "string",
"description": "Defines whether the SKU is made up of one or more SKUs (part of a kit) (`true`) or not (`false`). Must be enabled if you are adding a kit. Once activated, this definition cannot be reverted."
},
"RewardValue": {
"type": "number",
"description": "Credit that the customer receives when finalizing an order that includes the SKU. By filling this field out with `1`, the customer receives credit on the site in the selected currency, e.g. U$ 1."
},
"EstimatedDateArrival": {
"type": "string",
"description": "SKU estimated arrival date in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format, when the product is on pre-sale. You must take into consideration both the launch date and the freight calculation for the arrival date.",
"nullable": true
},
"ManufacturerCode": {
"type": "string",
"description": "Identifier provided by the manufacturers to identify their product. This field should be filled in if the product has a specific manufacturer's code."
},
"CommercialConditionId": {
"type": "integer",
"description": "Commercial condition ID, used to define SKU specific promotions or installment rules. In case of no specific condition, use `1` (default value). This field does not accept `0`. Learn more at [Registering a commercial condition](https://help.vtex.com/tutorial/registering-a-commercial-condition--tutorials_445).",
"default": 1
},
"MeasurementUnit": {
"type": "string",
"description": "Measurement unit. This field should only be used when it is necessary to convert the unit of measure for sale. For example, if a product is sold in boxes, but customers want to buy per square meter (m²). In common cases, use `\"un\"`."
},
"UnitMultiplier": {
"type": "number",
"description": "Multiple number of SKU. If the multiplier is 5.0000, the product can be added in multiple quantities of 5, 10, 15, 20, onward."
},
"ModalType": {
"type": "string",
"nullable": true,
"description": "Links an unusual type of SKU that need special transportation, suach as meat, glass, or a mattress, to a carrier specialized in delivering it. This field should be filled in with the name of the modal (e.g. \"Chemicals\" or \"Refrigerated products\"). To learn more about this feature, read our articles [How the modal works](https://help.vtex.com/en/tutorial/how-does-the-modal-work--tutorials_125) and [Setting up modal for carriers](https://help.vtex.com/en/tutorial/configure-modal--3jhLqxuPhuiq24UoykCcqy)."
},
"KitItensSellApart": {
"type": "boolean",
"description": "Defines if kit components can be sold apart."
},
"Videos": {
"type": "array",
"description": "Videos URLs.",
"items": {
"type": "string",
"description": "Video URL."
}
}
}
}
}
}
}
}
}
},
"/api/catalog/pvt/stockkeepingunit/{skuId}/complement": {
"get": {
"tags": [
"SKU complement"
],
"summary": "Get SKU complement by SKU ID",
"description": "Retrieves an existing SKU complement by its SKU ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "GetSKUComplementbySKUID",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SkuComplement"
},
"example": [
{
"Id": 61,
"SkuId": 7,
"ParentSkuId": 1,
"ComplementTypeId": 1
}
]
}
}
}
}
}
},
"/api/catalog/pvt/stockkeepingunit/{skuId}/complement/{complementTypeId}": {
"get": {
"tags": [
"SKU complement"
],
"summary": "Get SKU complements by complement type ID",
"description": "Retrieves all the existing SKU complements with the same complement type ID of a specific SKU.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "GetSKUComplementsbyComplementTypeID",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "ID of the SKU which will be inserted as a complement in the parent SKU.",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "complementTypeId",
"in": "path",
"required": true,
"description": "Complement type ID. This represents the type of the complement. The possible values are: `1` for **Accessory**; `2` for **Suggestion**; `3` for **Similar product**; `5` for **Show together**.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SkuComplement"
},
"example": [
{
"Id": 61,
"SkuId": 7,
"ParentSkuId": 1,
"ComplementTypeId": 1
}
]
}
}
}
}
}
},
"/api/catalog_system/pvt/sku/complements/{parentSkuId}/{type}": {
"get": {
"tags": [
"SKU complement"
],
"summary": "Get SKU complements by type",
"description": "Retrieves all the existing SKU complements with the same complement type ID of a specific SKU and parent SKU ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "GetSKUcomplementsbytype",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "parentSkuId",
"in": "path",
"required": true,
"description": "ID of the parent SKU, where the complement is inserted.",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "type",
"in": "path",
"required": true,
"description": "Complement type ID. This represents the type of the complement. The possible values are: `1` for **Accessory**; `2` for **Suggestion**; `3` for **Similar product**; `5` for **Show together**.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"ParentSkuId": 1,
"ComplementSkuIds": [
7
],
"Type": "1"
},
"schema": {
"type": "object",
"required": [
"ParentSkuId",
"ComplementSkuIds",
"Type"
],
"properties": {
"ParentSkuId": {
"type": "integer",
"description": "ID of the parent SKU, where the complement is inserted."
},
"ComplementSkuIds": {
"type": "array",
"description": "Array with SKU complements IDs.",
"items": {
"type": "integer",
"description": "SKU complement ID."
}
},
"Type": {
"type": "string",
"description": "Complement type ID. This represents the type of the complement. The possible values are: `1` for **Accessory**; `2` for **Suggestion**; `3` for **Similar product**; `5` for **Show together**.",
"enum": [
"1",
"2",
"3",
"4",
"5"
]
}
}
}
}
}
}
}
}
},
"/api/catalog/pvt/skucomplement": {
"post": {
"tags": [
"SKU complement"
],
"summary": "Create SKU complement",
"description": "Creates a new SKU complement on a parent SKU.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "CreateSKUComplement",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"example": {
"ParentSkuId": 1,
"SkuId": 2,
"ComplementTypeId": 2
},
"schema": {
"type": "object",
"required": [
"ParentSkuId",
"SkuId",
"ComplementTypeId"
],
"properties": {
"ParentSkuId": {
"type": "integer",
"description": "ID of the parent SKU, where the complement is inserted.",
"example": 1
},
"SkuId": {
"type": "integer",
"description": "ID of the SKU which will be inserted as a complement in the parent SKU.",
"example": 1
},
"ComplementTypeId": {
"type": "integer",
"description": "Complement type ID. This represents the type of the complement. The possible values are: `1` for **Accessory**; `2` for **Suggestion**; `3` for **Similar product**; `5` for **Show together**.",
"example": 1,
"enum": [
1,
2,
3,
4,
5
]
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SkuComplement"
},
"example": [
{
"Id": 61,
"SkuId": 7,
"ParentSkuId": 1,
"ComplementTypeId": 1
}
]
}
}
}
}
}
},
"/api/catalog/pvt/skucomplement/{skuComplementId}": {
"get": {
"tags": [
"SKU complement"
],
"summary": "Get SKU complement by SKU complement ID",
"description": "Retrieves an existing SKU complement by its SKU complement ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "GetSKUComplementbySKUComplementID",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuComplementId",
"in": "path",
"required": true,
"description": "SKU complement's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SkuComplement"
},
"example": [
{
"Id": 61,
"SkuId": 7,
"ParentSkuId": 1,
"ComplementTypeId": 1
}
]
}
}
}
}
},
"delete": {
"tags": [
"SKU complement"
],
"summary": "Delete SKU complement by SKU complement ID",
"description": "Deletes a previously existing SKU complement by SKU complement ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "DeleteSKUComplementbySKUComplementID",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuComplementId",
"in": "path",
"required": true,
"description": "SKU complement's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog_system/pvt/sku/stockkeepingunitbyean/{ean}": {
"get": {
"tags": [
"SKU EAN"
],
"summary": "Get SKU by EAN",
"description": "Retrieves an SKU by its EAN ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SkubyEAN",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "ean",
"in": "path",
"description": "EAN of the SKU which you need to retrieve details from.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "1234567890123"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GetSKUAltID"
},
"example": {
"Id": 2001773,
"ProductId": 2001426,
"NameComplete": "Tabela de Basquete",
"ProductName": "Tabela de Basquete",
"ProductDescription": "Tabela de Basquete",
"SkuName": "Tabela de Basquete",
"IsActive": true,
"IsTransported": true,
"IsInventoried": true,
"IsGiftCardRecharge": false,
"ImageUrl": "http://ambienteqa.vteximg.com.br/arquivos/ids/168952-55-55/7508800GG.jpg",
"DetailUrl": "/tabela-de-basquete/p",
"CSCIdentification": null,
"BrandId": "2000018",
"BrandName": "MARCA ARGOLO TESTE",
"Dimension": {
"cubicweight": 81.6833,
"height": 65,
"length": 58,
"weight": 10000,
"width": 130
},
"RealDimension": {
"realCubicWeight": 274.1375,
"realHeight": 241,
"realLength": 65,
"realWeight": 9800,
"realWidth": 105
},
"ManufacturerCode": "",
"IsKit": false,
"KitItems": [],
"Services": [],
"Categories": [],
"Attachments": [
{
"Id": 3,
"Name": "Mensagem",
"Keys": [
"nome;20",
"foto;40"
],
"Fields": [
{
"FieldName": "nome",
"MaxCaracters": "20",
"DomainValues": "Adalberto,Pedro,João"
},
{
"FieldName": "foto",
"MaxCaracters": "40",
"DomainValues": null
}
],
"IsActive": true,
"IsRequired": false
}
],
"Collections": [],
"SkuSellers": [
{
"SellerId": "1",
"StockKeepingUnitId": 2001773,
"SellerStockKeepingUnitId": "2001773",
"IsActive": true,
"FreightCommissionPercentage": 0,
"ProductCommissionPercentage": 0
}
],
"SalesChannels": [
1,
2,
3,
10
],
"Images": [
{
"ImageUrl": "http://ambienteqa.vteximg.com.br/arquivos/ids/168952/7508800GG.jpg",
"ImageName": "",
"FileId": 168952
},
{
"ImageUrl": "http://ambienteqa.vteximg.com.br/arquivos/ids/168953/7508800_1GG.jpg",
"ImageName": "",
"FileId": 168953
},
{
"ImageUrl": "http://ambienteqa.vteximg.com.br/arquivos/ids/168954/7508800_2GG.jpg",
"ImageName": "",
"FileId": 168954
}
],
"SkuSpecifications": [
{
"FieldId": 102,
"FieldName": "Cor",
"FieldValueIds": [
266
],
"FieldValues": [
"Padrão"
]
}
],
"ProductSpecifications": [
{
"FieldId": 7,
"FieldName": "Faixa Etária",
"FieldValueIds": [
58,
56,
55,
52
],
"FieldValues": [
"5 a 6 anos",
"7 a 8 anos",
"9 a 10 anos",
"Acima de 10 anos"
]
},
{
"FieldId": 23,
"FieldName": "Fabricante",
"FieldValueIds": [],
"FieldValues": [
"Xalingo"
]
}
],
"ProductClustersIds": "176,187,192,194,211,217,235,242",
"ProductCategoryIds": "/59/",
"ProductGlobalCategoryId": null,
"ProductCategories": {
"59": "Brinquedos"
},
"CommercialConditionId": 1,
"RewardValue": 100.0,
"AlternateIds": {
"Ean": "8781",
"RefId": "878181"
},
"AlternateIdValues": [
"8781",
"878181"
],
"EstimatedDateArrival": null,
"MeasurementUnit": "un",
"UnitMultiplier": 2.0000,
"InformationSource": null,
"ModalType": ""
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog/pvt/stockkeepingunit/{skuId}/ean": {
"get": {
"tags": [
"SKU EAN"
],
"summary": "Get EAN by SKU ID",
"description": "Retrieves the EAN of the SKU.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"description": "Array with EANs associated with the SKU.",
"items": {
"type": "string",
"description": "EAN."
}
},
"example": [
"1234567890123"
]
}
}
}
}
},
"delete": {
"tags": [
"SKU EAN"
],
"summary": "Delete all SKU EAN values",
"description": "Deletes all EAN values of an SKU.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/stockkeepingunit/{skuId}/ean/{ean}": {
"post": {
"tags": [
"SKU EAN"
],
"summary": "Create SKU EAN",
"description": "Creates or updates the EAN value of an SKU.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "ean",
"in": "path",
"required": true,
"description": "EAN.",
"schema": {
"type": "string",
"example": "1234567"
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
},
"delete": {
"tags": [
"SKU EAN"
],
"summary": "Delete SKU EAN",
"description": "Deletes the EAN value of an SKU.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "ean",
"in": "path",
"required": true,
"description": "EAN number.",
"schema": {
"type": "string",
"example": "ABC123"
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/skuattachment": {
"post": {
"tags": [
"SKU attachment"
],
"summary": "Associate SKU attachment",
"description": "Associates an existing SKU to an existing attachment.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"AttachmentId",
"SkuId"
],
"properties": {
"AttachmentId": {
"type": "integer",
"description": "Attachment ID.",
"example": 1
},
"SkuId": {
"type": "integer",
"description": "Unique identifier of an SKU.",
"example": 1
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"description": "Object containing information about the association between the SKU and the attachment.",
"properties": {
"Id": {
"type": "integer",
"description": "Identifier of the SKU's association to the attachment."
},
"AttachmentId": {
"type": "integer",
"description": "Attachment ID."
},
"SkuId": {
"type": "integer",
"description": "Unique identifier of the SKU."
}
}
},
"example": {
"Id": 31,
"AttachmentId": 1,
"SkuId": 7
}
}
}
}
}
},
"delete": {
"tags": [
"SKU attachment"
],
"summary": "Dissociate attachments and SKUs",
"description": "Dissociates attachments and SKUs based on an SKU ID or an attachment ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "query",
"description": "SKU ID. By using this query param, you can dissociate all the attachments from an SKU based on its SKU ID.",
"required": false,
"style": "form",
"explode": true,
"schema": {
"type": "integer",
"format": "int32",
"example": 1
}
},
{
"name": "attachmentId",
"in": "query",
"description": "Attachment ID. By using this query param, you can dissociate the given attachment from all previously associated SKUs.",
"required": false,
"style": "form",
"explode": true,
"schema": {
"type": "integer",
"format": "int32",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/stockkeepingunit/{skuId}/attachment": {
"get": {
"tags": [
"SKU attachment"
],
"summary": "Get SKU attachments by SKU ID",
"description": "Retrieves existing SKU attachments by SKU ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU unique identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"description": "Array of objects with information about the association between the attachments and the SKU.",
"items": {
"type": "object",
"description": "Object containing information about the association between the SKU and the attachment.",
"properties": {
"Id": {
"type": "integer",
"description": "Identifier of the SKU's association to the attachment."
},
"AttachmentId": {
"type": "integer",
"description": "Attachment ID."
},
"SkuId": {
"type": "integer",
"description": "Unique identifier of the SKU."
}
}
}
},
"example": [
{
"Id": 97,
"AttachmentId": 1,
"SkuId": 1
}
]
}
}
}
}
}
},
"/api/catalog/pvt/skuattachment/{skuAttachmentAssociationId}": {
"delete": {
"tags": [
"SKU attachment"
],
"summary": "Delete SKU attachment by attachment association ID",
"description": "Deletes the association of an SKU to an attachment.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuAttachmentAssociationId",
"in": "path",
"required": true,
"description": "ID of the association between the attachment and the SKU, which corresponds to the `Id` in the response body of the [Associate SKU attachment](https://developers.vtex.com/vtex-rest-api/reference/catalog-api-post-sku-attachment) and the [Get SKU attachment by SKU ID](https://developers.vtex.com/vtex-rest-api/reference/get_api-catalog-pvt-stockkeepingunit-skuid-attachment) endpoints.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog_system/pvt/sku/associateattachments": {
"post": {
"tags": [
"SKU attachment"
],
"summary": "Associate attachments to an SKU",
"description": "Associates attachments to an SKU based on a given SKU ID and attachment names.\n\rThis request removes existing SKU attachment associations and recreates the associations with the attachments being sent.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "AssociateattachmentstoSKU",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"required": [
"SkuId",
"AttachmentNames"
],
"type": "object",
"properties": {
"SkuId": {
"type": "integer",
"description": "Unique identifier of the SKU.",
"example": 1
},
"AttachmentNames": {
"type": "array",
"description": "Array with all the names of the attachments that you need to associate to the SKU.",
"items": {
"type": "string",
"description": "Attachment name.",
"example": "T-Shirt Customization"
}
}
}
},
"example": {
"SkuId": 1,
"AttachmentNames": [
"T-Shirt Customization"
]
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
}
},
"deprecated": false
}
},
"/api/catalog/pvt/stockkeepingunit/{skuId}/file": {
"get": {
"tags": [
"SKU file"
],
"summary": "Get SKU files",
"description": "Retrieves general information about all files in the SKU.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"description": "Array with objects containing SKU files information.",
"items": {
"type": "object",
"description": "Object containing each SKU file's information.",
"properties": {
"Id": {
"type": "integer",
"description": "Unique identifier of the association of the image to the SKU."
},
"ArchiveId": {
"type": "integer",
"description": "Unique identifier of the image."
},
"SkuId": {
"type": "integer",
"description": "Unique identifier of the SKU."
},
"Name": {
"type": "string",
"description": "Image name."
},
"IsMain": {
"type": "boolean",
"description": "Defines if the image is the main image of the SKU."
},
"Label": {
"type": "string",
"description": "Image label.",
"nullable": true
}
}
}
},
"example": [
{
"Id": 549,
"ArchiveId": 155485,
"SkuId": 310118490,
"Name": "chimera-cat-quimera-5",
"IsMain": true,
"Label": "miau"
},
{
"Id": 550,
"ArchiveId": 155486,
"SkuId": 310118490,
"Name": "Gato-siames",
"IsMain": false,
"Label": "Gato siames"
},
{
"Id": 555,
"ArchiveId": 155491,
"SkuId": 310118490,
"Name": "Cat-Sleeping-Pics",
"IsMain": false,
"Label": null
}
]
}
}
}
}
},
"post": {
"tags": [
"SKU file"
],
"summary": "Create SKU file",
"description": "Creates a new image for an SKU based on its URL or on a form-data request body.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 123456
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SKUFileURL"
}
},
"form-data": {
"schema": {
"$ref": "#/components/schemas/SKUFile"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 625,
"ArchiveId": 155569,
"SkuId": 123456,
"IsMain": true,
"Label": "Main"
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "ID of the association of the SKU and the image (`SkuFileId`). This is the ID that is used to update or delete it."
},
"ArchiveId": {
"type": "integer",
"description": "Unique identifier of the image file."
},
"SkuId": {
"type": "integer",
"description": "SKU ID."
},
"IsMain": {
"type": "boolean",
"description": "Set the image as the main image for the product."
},
"Label": {
"type": "string",
"description": "Image label."
}
}
}
}
}
}
}
},
"delete": {
"tags": [
"SKU file"
],
"summary": "Delete all SKU files",
"description": "Deletes all SKU image files.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/stockkeepingunit/{skuId}/file/{skuFileId}": {
"put": {
"tags": [
"SKU file"
],
"summary": "Update SKU file",
"description": "Updates a new image on an SKU based on its URL or on a form-data request body.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 123456
}
},
{
"name": "skuFileId",
"in": "path",
"required": true,
"description": "ID of the association of the SKU and the image, which can be obtained by placing a request to the [Get SKU file](https://developers.vtex.com/vtex-rest-api/reference/catalog-api-get-sku-file) endpoint and copying the `Id` field.",
"schema": {
"type": "integer",
"example": 517
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SKUFileURL"
}
},
"form-data": {
"schema": {
"$ref": "#/components/schemas/SKUFile"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 625,
"ArchiveId": 155569,
"SkuId": 123456,
"IsMain": true,
"Label": "Main"
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "ID of the association of the SKU and the image (`SkuFileId`). This is the ID that is used to update or delete it."
},
"ArchiveId": {
"type": "integer",
"description": "Unique identifier of the image file."
},
"SkuId": {
"type": "integer",
"description": "SKU ID."
},
"IsMain": {
"type": "boolean",
"description": "Set the image as the main image for the product."
},
"Label": {
"type": "string",
"description": "Image label."
}
}
}
}
}
}
}
},
"delete": {
"tags": [
"SKU file"
],
"summary": "Delete SKU image file",
"description": "Deletes a specific SKU image file.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "skuFileId",
"in": "path",
"required": true,
"description": "ID of the association of the SKU and the image, which can be obtained by placing a request to the [Get SKU file](https://developers.vtex.com/vtex-rest-api/reference/catalog-api-get-sku-file) endpoint and copying the `Id` field.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/stockkeepingunit/copy/{skuIdfrom}/{skuIdto}/file": {
"put": {
"tags": [
"SKU file"
],
"summary": "Copy files from an SKU to another SKU",
"description": "Copy all existing files from an SKU to another SKU.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuIdfrom",
"in": "path",
"required": true,
"description": "__Origin__ SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "skuIdto",
"in": "path",
"required": true,
"description": "__Target__ SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 2
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"description": "Array with objects containing information about each of the target SKU's files.",
"items": {
"type": "object",
"description": "Object containing each SKU file's information.",
"properties": {
"Id": {
"type": "integer",
"description": "Unique identifier of the association of the image to the SKU."
},
"ArchiveId": {
"type": "integer",
"description": "Unique identifier of the image file."
},
"SkuId": {
"type": "integer",
"description": "Unique identifier of the SKU."
},
"IsMain": {
"type": "boolean",
"description": "Defines if the image is the main image of the SKU."
},
"Label": {
"type": "string",
"description": "Image label.",
"nullable": true
}
}
}
},
"example": [
{
"Id": 1964,
"ArchiveId": 155404,
"SkuId": 1,
"IsMain": true,
"Label": ""
},
{
"Id": 1965,
"ArchiveId": 155429,
"SkuId": 1,
"IsMain": false,
"Label": ""
}
]
}
}
}
}
}
},
"/api/catalog/pvt/stockkeepingunit/disassociate/{skuId}/file/{skuFileId}": {
"delete": {
"tags": [
"SKU file"
],
"summary": "Disassociate SKU file",
"description": "Disassociates an SKU file from an SKU.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "skuFileId",
"in": "path",
"required": true,
"description": "ID of the association of the SKU and the image, which can be obtained by placing a request to the [Get SKU file](https://developers.vtex.com/vtex-rest-api/reference/catalog-api-get-sku-file) endpoint and copying the `Id` field.",
"schema": {
"type": "integer",
"example": 32
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/stockkeepingunitkit": {
"get": {
"tags": [
"SKU kit"
],
"summary": "Get SKU kit by SKU ID or Parent SKU ID",
"description": "Retrieves general information about the components of an SKU kit by SKU ID or Parent SKU ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Miscellaneous | **SKU Bundles** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "query",
"description": "SKU's unique numerical identifier.",
"required": false,
"style": "form",
"explode": true,
"schema": {
"type": "integer",
"format": "int32",
"example": 1
}
},
{
"name": "parentSkuId",
"in": "query",
"description": "Parent SKU's unique numerical identifier.",
"required": false,
"style": "form",
"explode": true,
"schema": {
"type": "integer",
"format": "int32",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SkuKit"
},
"example": {
"Id": 7,
"StockKeepingUnitParent": 7,
"StockKeepingUnitId": 1,
"Quantity": 1,
"UnitPrice": 50.0000
}
}
}
}
}
},
"post": {
"tags": [
"SKU kit"
],
"summary": "Create SKU kit",
"description": "Adds a component to a specific kit.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Miscellaneous | **SKU Bundles** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"StockKeepingUnitParent",
"StockKeepingUnitId",
"Quantity",
"UnitPrice"
],
"properties": {
"StockKeepingUnitParent": {
"type": "integer",
"description": "SKU ID of the SKU kit.",
"example": 31018373
},
"StockKeepingUnitId": {
"type": "integer",
"description": "Component SKU ID.",
"example": 31018374
},
"Quantity": {
"type": "integer",
"description": "Component quantity.",
"example": 3
},
"UnitPrice": {
"type": "number",
"description": "Component price per unit.",
"example": 15.5
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SkuKit"
},
"example": {
"Id": 7,
"StockKeepingUnitParent": 7,
"StockKeepingUnitId": 1,
"Quantity": 1,
"UnitPrice": 50.0000
}
}
}
}
}
},
"delete": {
"tags": [
"SKU kit"
],
"summary": "Delete SKU kit by SKU ID or parent SKU ID",
"description": "Deletes all kit's components based on the parent SKU ID or deletes a specific kit's component based on the SKU ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Miscellaneous | **SKU Bundles** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "query",
"description": "SKU's unique numerical identifier.",
"required": false,
"style": "form",
"explode": true,
"schema": {
"type": "integer",
"format": "int32",
"example": 1
}
},
{
"name": "parentSkuId",
"in": "query",
"description": "Parent SKU's unique numerical identifier.",
"required": false,
"style": "form",
"explode": true,
"schema": {
"type": "integer",
"format": "int32",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/stockkeepingunitkit/{kitId}": {
"get": {
"tags": [
"SKU kit"
],
"summary": "Get SKU kit",
"description": "Retrieves general information about a component of a kit.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Miscellaneous | **SKU Bundles** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "kitId",
"in": "path",
"required": true,
"description": "Kit's unique numerical identifier",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SkuKit"
},
"example": {
"Id": 7,
"StockKeepingUnitParent": 7,
"StockKeepingUnitId": 1,
"Quantity": 1,
"UnitPrice": 50.0000
}
}
}
}
}
},
"delete": {
"tags": [
"SKU kit"
],
"summary": "Delete SKU kit by kit ID",
"description": "Deletes a specific kit's component based on its kit ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Miscellaneous | **SKU Bundles** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "kitId",
"in": "path",
"required": true,
"description": "Kit's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog_system/pvt/skuseller/{sellerId}/{sellerSkuId}": {
"get": {
"tags": [
"SKU seller"
],
"summary": "Get details of a seller's SKU",
"description": " > ⚠️ Check out the updated version of this endpoint in our [SKU Bindings API documentation](https://developers.vtex.com/docs/api-reference/sku-bindings-api#get-/sku-binding/pvt/skuseller/-sellerId-/-sellerSkuId-). If you are doing this integration for the first time, we recommend that you follow the updated documentation.\n\nRetrieves the details of a seller's SKU given a seller ID and the SKU ID in the seller's store.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Marketplace | **Seller SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "GetSKUseller",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "sellerId",
"in": "path",
"description": "ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "101"
}
},
{
"name": "sellerSkuId",
"in": "path",
"description": "SKU ID in the seller's store.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "1"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"IsPersisted",
"IsRemoved",
"SkuSellerId",
"SellerId",
"StockKeepingUnitId",
"SellerStockKeepingUnitId",
"IsActive",
"UpdateDate",
"RequestedUpdateDate"
],
"properties": {
"IsPersisted": {
"type": "boolean",
"description": "Defines if the seller is persisted."
},
"IsRemoved": {
"type": "boolean",
"description": "Defines if the seller is removed."
},
"SkuSellerId": {
"type": "integer",
"format": "int32",
"description": "SKU ID in the seller's store."
},
"SellerId": {
"type": "string",
"description": "ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID."
},
"StockKeepingUnitId": {
"type": "integer",
"format": "int32",
"description": "SKU ID in the VTEX marketplace."
},
"SellerStockKeepingUnitId": {
"type": "string",
"description": "SKU seller ID."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the SKU binding is active."
},
"UpdateDate": {
"type": "string",
"description": "Date when the SKU binding was updated for the last time, in UTC format."
},
"RequestedUpdateDate": {
"type": "string",
"description": "Date when an SKU binding update was requested for the last time, in UTC format.",
"nullable": true
}
}
},
"example": {
"IsPersisted": true,
"IsRemoved": false,
"SkuSellerId": 799,
"SellerId": "myseller",
"StockKeepingUnitId": 50,
"SellerStockKeepingUnitId": "502",
"IsActive": true,
"UpdateDate": "2018-10-11T04:52:42.1",
"RequestedUpdateDate": null
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pvt/skuseller/remove/{sellerId}/{sellerSkuId}": {
"post": {
"tags": [
"SKU seller"
],
"summary": "Remove a seller's SKU binding",
"description": " > ⚠️ Check out the updated version of this endpoint in our [SKU Bindings API documentation](https://developers.vtex.com/docs/api-reference/sku-bindings-api#post-/sku-binding/pvt/skuseller/remove/-sellerId-/-sellerSkuId-). If you are doing this integration for the first time, we recommend that you follow the updated documentation.\n\nRemove a seller's SKU binding, given the seller ID and the SKU ID in the seller's store.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Marketplace | **Seller SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "DeleteSKUsellerassociation",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "sellerId",
"in": "path",
"description": "ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "101"
}
},
{
"name": "sellerSkuId",
"in": "path",
"description": "SKU ID in the seller's store.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "1"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"deprecated": false
}
},
"/api/catalog_system/pvt/skuseller/changenotification/{sellerId}/{sellerSkuId}": {
"post": {
"tags": [
"SKU seller"
],
"summary": "Change notification with seller ID and seller SKU ID",
"description": " > ⚠️ Check out the updated version of this endpoint in our [SKU Bindings API documentation](https://developers.vtex.com/docs/api-reference/sku-bindings-api#post-/sku-binding/pvt/skuseller/changenotification/-sellerId-/-sellerSkuId-). If you are doing this integration for the first time, we recommend that you follow the updated documentation.\n\nThe seller is responsible for suggesting new SKUs to be sold in the VTEX marketplace and also for informing the marketplace about changes in their SKUs that already exist in the marketplace. Both actions start with a catalog notification, which is made by this request.\n\nWith this notification, the seller is telling the marketplace that something has changed about a specific SKU, like price or inventory, or that this is a new SKU that the seller would like to offer to the marketplace.\n\nThere are two information expected by the marketplace in this request: the `sellerId`, which identifies the seller, and the `sellerSkuId`, which identifies the binding of the seller with the SKU.\n\nBoth information are passed through the request URL. The body of the request should be empty.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Marketplace | **Seller SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "sellerId",
"in": "path",
"description": "ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "101"
}
},
{
"name": "sellerSkuId",
"in": "path",
"description": "ID of the binding of the seller with the SKU.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "1"
}
}
],
"responses": {
"204": {
"description": "No Content"
}
},
"deprecated": false
}
},
"/api/catalog_system/pvt/skuseller/changenotification/{skuId}": {
"post": {
"tags": [
"SKU seller"
],
"summary": "Change notification with SKU ID",
"description": " > ⚠️ Check out the updated version of this endpoint in our [SKU Bindings API documentation](https://developers.vtex.com/docs/api-reference/sku-bindings-api#post-/sku-binding/pvt/skuseller/changenotification/-skuId-). If you are doing this integration for the first time, we recommend that you follow the updated documentation.\r\n\r\nThe seller is responsible for suggesting new SKUs to be sold in the VTEX marketplace and also for informing the marketplace about changes in their SKUs that already exist in the marketplace. Both actions start with a catalog notification, which is made by this request.\r\n\r\nWith this notification, the seller is telling the marketplace that something has changed about a specific SKU, like its name or description, or that this is a new SKU that the seller would like to offer to the marketplace. The body of the request should be empty.\r\n\r\n > ⚠️ Do not use this endpoint for price and inventory changes, because these types of updates should be notified using Marketplace API. For price changes, we recommend using the [Notify marketplace of price update](https://developers.vtex.com/docs/api-reference/marketplace-apis#post-/notificator/-sellerId-/changenotification/-skuId-/price) endpoint. For inventory changes, use [Notify marketplace of inventory update](https://developers.vtex.com/docs/api-reference/marketplace-apis#post-/notificator/-sellerId-/changenotification/-skuId-/inventory).\r\n\r\n## Example\r\n\r\nLet's say your seller has the ID `123` in the marketplace and you want to inform the marketplace that has been a change in the SKU with ID `700`.\r\n\r\nIn this case, you would have to replace the `sellerId` parameter with the value `123` and the `skuId` parameter with the value `700`. The URL of the request would be the following.\r\n\r\n```\r\nhttps://{{accountName}}.vtexcommercestable.com.br/api/catalog_system/pvt/skuseller/changenotification/123/700\r\n```\r\n\r\n## Response codes\r\n\r\nThe following response codes are possible for this request.\r\n\r\n* **404:** the SKU was not found in the marketplace. The body of the response, in this case, should follow this format: \"Seller StockKeepingUnit `{{skuId}}` not found for this seller id `{{sellerId}}`\". This means that the seller can now proceed with sending an offer to the marketplace in order to suggest that this SKU is sold there.\r\n* **200:** the SKU whose ID was informed in the URL already exists in the marketplace and was found. The marketplace can now proceed with a fulfillment simulation in order to get updated information about this SKU's inventory and price.\r\n* **429:** Failure due to too many requests.\r\n* **403:** Failure in the authentication.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Marketplace | **Seller SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "ChangeNotification",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"description": "A string that identifies the SKU in the marketplace. This is the ID that the marketplace will use to look for the SKU whose change the seller wants to inform. If the marketplace finds this ID, it responds with status code 200. Otherwise, it responds with status code 404.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "10"
}
}
],
"responses": {
"200": {
"description": "OK"
},
"404": {
"description": "Not found",
"content": {
"text/plain": {
"schema": {
"type": "string"
},
"example": "Seller StockKeepingUnit `{{skuId}}` not found for this seller id `{{sellerId}}`"
}
}
},
"429": {
"description": "Too many requests"
},
"403": {
"description": "Forbidden"
}
},
"deprecated": false
}
},
"/api/catalog/pvt/skuservice/{skuServiceId}": {
"get": {
"tags": [
"SKU service"
],
"summary": "Get SKU service",
"description": "Retrieves an SKU service.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU Services** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuServiceId",
"in": "path",
"required": true,
"description": "SKU service unique identifier.",
"schema": {
"type": "integer",
"example": 5
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SKUService"
},
"example": {
"Id": 1,
"SkuServiceTypeId": 1,
"SkuServiceValueId": 1,
"SkuId": 1,
"Name": "name",
"Text": "text",
"IsActive": false
}
}
}
}
}
},
"put": {
"tags": [
"SKU service"
],
"summary": "Update SKU service",
"description": "Updates an SKU service.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU Services** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuServiceId",
"in": "path",
"required": true,
"description": "SKU service unique identifier.",
"schema": {
"type": "integer",
"example": 5
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"SkuServiceTypeId",
"SkuServiceValueId",
"SkuId",
"Name",
"Text",
"IsActive"
],
"properties": {
"SkuServiceTypeId": {
"type": "integer",
"description": "SKU service type ID.",
"example": 2
},
"SkuServiceValueId": {
"type": "integer",
"description": "SKU service value ID.",
"example": 1
},
"SkuId": {
"type": "integer",
"description": "SKU ID.",
"example": 1
},
"Name": {
"type": "string",
"description": "SKU service name. Maximum of 50 characters.",
"example": "Test name"
},
"Text": {
"type": "string",
"description": "Internal description for the SKU service. Maximum of 100 characters.",
"example": "Text"
},
"IsActive": {
"type": "boolean",
"description": "Defines if the SKU service is active or not.",
"example": true
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SKUService"
},
"example": {
"Id": 1,
"SkuServiceTypeId": 1,
"SkuServiceValueId": 1,
"SkuId": 1,
"Name": "name",
"Text": "text",
"IsActive": false
}
}
}
}
}
},
"delete": {
"tags": [
"SKU service"
],
"summary": "Dissociate SKU service",
"description": "Dissociates an SKU service from an SKU.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU Services** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuServiceId",
"in": "path",
"required": true,
"description": "SKU service unique identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/skuservice": {
"post": {
"tags": [
"SKU service"
],
"summary": "Associate SKU service",
"description": "Associates an SKU service to an SKU.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU Services** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"SkuServiceTypeId",
"SkuServiceValueId",
"SkuId",
"Name",
"Text",
"IsActive"
],
"properties": {
"SkuServiceTypeId": {
"type": "integer",
"description": "SKU service type ID.",
"example": 1
},
"SkuServiceValueId": {
"type": "integer",
"description": "SKU service value ID.",
"example": 1
},
"SkuId": {
"type": "integer",
"description": "SKU ID.",
"example": 1
},
"Name": {
"type": "string",
"description": "SKU service name. Maximum of 50 characters.",
"example": "Engraving"
},
"Text": {
"type": "string",
"description": "Internal description of the SKU service. Maximum of 100 characters.",
"example": "Name engraving additional service."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the SKU service is active or not.",
"example": true
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SKUService"
},
"example": {
"Id": 1,
"SkuServiceTypeId": 1,
"SkuServiceValueId": 1,
"SkuId": 1,
"Name": "name",
"Text": "text",
"IsActive": false
}
}
}
}
}
}
},
"/api/catalog/pvt/skuservicetypeattachment": {
"post": {
"tags": [
"SKU service attachment"
],
"summary": "Associate SKU service attachment",
"description": "Associates an Attachment for an existing SKU service type.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"AttachmentId",
"SkuServiceTypeId"
],
"properties": {
"AttachmentId": {
"type": "integer",
"description": "Attachment ID.",
"example": 1
},
"SkuServiceTypeId": {
"type": "integer",
"description": "SKU service type ID.",
"example": 1
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "SKU service type attachment association ID."
},
"AttachmentId": {
"type": "integer",
"description": "Attachment ID."
},
"SkuServiceTypeId": {
"type": "integer",
"description": "SKU service type ID."
}
}
},
"example":{
"Id": 1,
"AttachmentId": 1,
"SkuServiceTypeId": 1
}
}
}
}
}
},
"delete": {
"tags": [
"SKU service attachment"
],
"summary": "Dissociate attachment by attachment ID or SKU service type ID",
"description": "Dissociates an attachment by its attachment ID or SKU service type ID from an SKU service type.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "attachmentId",
"in": "query",
"required": false,
"description": "SKU service attachment unique identifier.",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "skuServiceTypeId",
"in": "query",
"required": false,
"description": "SKU service type unique identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/skuservicetypeattachment/{skuServiceTypeAttachmentId}": {
"delete": {
"tags": [
"SKU service attachment"
],
"summary": "Dissociate Attachment from SKU service type",
"description": "Dissociates an Attachment from an SKU service type.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuServiceTypeAttachmentId",
"in": "path",
"required": true,
"description": "SKU service attachment unique identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/skuservicetype": {
"post": {
"tags": [
"SKU service type"
],
"summary": "Create SKU service type",
"description": "Creates a new SKU service type.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU type management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SKUServiceTypeRequest"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SKUServiceTypeResponse"
},
"example": {
"Id": 2,
"Name": "Test API SKU services",
"IsActive": true,
"ShowOnProductFront": true,
"ShowOnCartFront": true,
"ShowOnAttachmentFront": true,
"ShowOnFileUpload": true,
"IsGiftCard": true,
"IsRequired": true
}
}
}
}
}
}
},
"/api/catalog/pvt/skuservicetype/{skuServiceTypeId}": {
"get": {
"tags": [
"SKU service type"
],
"summary": "Get SKU service type",
"description": "Retrieves information about an existing SKU service type.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU type management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuServiceTypeId",
"in": "path",
"required": true,
"description": "SKU service type unique identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SKUServiceTypeResponse"
},
"example": {
"Id": 2,
"Name": "Test API SKU services",
"IsActive": true,
"ShowOnProductFront": true,
"ShowOnCartFront": true,
"ShowOnAttachmentFront": true,
"ShowOnFileUpload": true,
"IsGiftCard": true,
"IsRequired": true
}
}
}
}
}
},
"put": {
"tags": [
"SKU service type"
],
"summary": "Update SKU service type",
"description": "Updates an existing SKU service type.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU type management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuServiceTypeId",
"in": "path",
"required": true,
"description": "SKU service type unique identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SKUServiceTypeRequest"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SKUServiceTypeResponse"
},
"example": {
"Id": 2,
"Name": "Test API SKU services",
"IsActive": true,
"ShowOnProductFront": true,
"ShowOnCartFront": true,
"ShowOnAttachmentFront": true,
"ShowOnFileUpload": true,
"IsGiftCard": true,
"IsRequired": true
}
}
}
}
}
},
"delete": {
"tags": [
"SKU service type"
],
"summary": "Delete SKU service type",
"description": "Deletes an existing SKU service type.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU type management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuServiceTypeId",
"in": "path",
"required": true,
"description": "SKU service type unique identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/skuservicevalue": {
"post": {
"tags": [
"SKU service value"
],
"summary": "Create SKU service value",
"description": "Creates an SKU service value for an existing SKU service type.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU Services** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SKUServiceValueRequest"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SKUServiceValueResponse"
},
"example": {
"Id": 2,
"SkuServiceTypeId": 2,
"Name": "Test ServiceValue API",
"Value": 10.5,
"Cost": 10.5
}
}
}
}
}
}
},
"/api/catalog/pvt/skuservicevalue/{skuServiceValueId}": {
"get": {
"tags": [
"SKU service value"
],
"summary": "Get SKU service value",
"description": "Retrieves an existing SKU service value.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU Services** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuServiceValueId",
"in": "path",
"required": true,
"description": "SKU service value unique identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SKUServiceValueResponse"
},
"example": {
"Id": 2,
"SkuServiceTypeId": 2,
"Name": "Test ServiceValue API",
"Value": 10.5,
"Cost": 10.5
}
}
}
}
}
},
"put": {
"tags": [
"SKU service value"
],
"summary": "Update SKU service value",
"description": "Updates an existing SKU service value.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU Services** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuServiceValueId",
"in": "path",
"required": true,
"description": "SKU service value unique identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SKUServiceValueRequest"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SKUServiceValueResponse"
},
"example": {
"Id": 2,
"SkuServiceTypeId": 2,
"Name": "Test ServiceValue API",
"Value": 10.5,
"Cost": 10.5
}
}
}
}
}
},
"delete": {
"tags": [
"SKU service value"
],
"summary": "Delete SKU service value",
"description": "Deletes an existing SKU service value.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU Services** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuServiceValueId",
"in": "path",
"required": true,
"description": "SKU service value unique identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/stockkeepingunit/{skuId}/specification": {
"get": {
"tags": [
"SKU specification"
],
"summary": "Get SKU specifications",
"description": "Retrieves information about an SKU's specifications.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SKUSpecificationResponse"
}
},
"example": [
{
"Id": 1505,
"SkuId": 1234568387,
"FieldId": 193,
"FieldValueId": 360,
"Text": "Size 10"
}
]
}
}
}
}
},
"post": {
"tags": [
"SKU specification"
],
"summary": "Associate SKU specification",
"description": "Associates a previously created specification to an SKU.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1234568387
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"FieldId"
],
"properties": {
"FieldId": {
"type": "integer",
"description": "Specification field ID.",
"example": 13
},
"FieldValueId": {
"type": "integer",
"description": "Specification value ID. Required only for `FieldTypeId` as `5`, `6` and `7`.",
"example": 101
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SKUSpecificationResponse"
},
"example": {
"Id": 1505,
"SkuId": 1234568387,
"FieldId": 193,
"FieldValueId": 360,
"Text": "Size 10"
}
}
}
}
}
},
"put": {
"tags": [
"SKU specification"
],
"summary": "Update SKU specification",
"description": "Updates an existing specification on an existing SKU. This endpoint only updates the `FieldValueId`.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 21
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"Id",
"FieldId",
"FieldValueId"
],
"properties": {
"Id": {
"type": "integer",
"description": "Specification and SKU association unique identifier. This field cannot be updated.",
"example": 65
},
"SkuId": {
"type": "integer",
"description": "SKU unique identifier. This field cannot be updated.",
"example": 21
},
"FieldId": {
"type": "integer",
"description": "Specification field unique identifier. This field cannot be updated.",
"example": 32
},
"FieldValueId": {
"type": "integer",
"description": "Specification value unique identifier. This field can only be updated with other values of the same `FieldId`.",
"example": 131
},
"Text": {
"type": "string",
"description": "Specification value name. This field is automatically updated if the `FieldValue` is updated. Otherwise, the value cannot be modified.",
"example": "Red"
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SKUSpecificationResponse"
}
},
"example": [
{
"Id": 1505,
"SkuId": 1234568387,
"FieldId": 193,
"FieldValueId": 360,
"Text": "Size 10"
}
]
}
}
}
}
},
"delete": {
"tags": [
"SKU specification"
],
"summary": "Delete all SKU specifications",
"description": "Deletes all SKU specifications.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/stockkeepingunit/{skuId}/specification/{specificationId}": {
"delete": {
"tags": [
"SKU specification"
],
"summary": "Delete SKU specification",
"description": "Deletes a specific SKU specification.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "specificationId",
"in": "path",
"required": true,
"description": "Specification's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/stockkeepingunit/{skuId}/specificationvalue": {
"put": {
"tags": [
"SKU specification"
],
"summary": "Associate SKU specification using specification name and group name",
"description": "Associates a specification to an SKU using specification name and group name. Automatically creates the informed group, specification and values if they had not been created before.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **SKUs** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"example": {
"FieldName": "Size",
"GroupName": "Sizes",
"RootLevelSpecification": true,
"FieldValues": [
"M"
]
},
"required": [
"FieldName",
"GroupName",
"RootLevelSpecification",
"FieldValues"
],
"properties": {
"FieldName": {
"type": "string",
"description": "Specification name. Limited to 100 characters.",
"example": "Material"
},
"GroupName": {
"type": "string",
"description": "Group name.",
"example": "Composition"
},
"RootLevelSpecification": {
"type": "boolean",
"description": "Root level specification.",
"example": true
},
"FieldValues": {
"type": "array",
"description": "Array of specification values. SKU specifications must contain only one value.",
"example": [
"M"
],
"items": {
"type": "string",
"description": "Specification value.",
"example": "M"
}
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"example": [
{
"Id": 418,
"SkuId": 5,
"FieldId": 29,
"FieldValueId": 76,
"Text": "M"
}
],
"type": "array",
"description": "Array with information of all SKU specifications.",
"items": {
"type": "object",
"description": "Object with information of the specification.",
"properties": {
"Id": {
"type": "integer",
"description": "ID of the association of the SKU and the specification."
},
"SkuId": {
"type": "integer",
"description": "SKU ID."
},
"FieldId": {
"type": "integer",
"description": "Specification field ID."
},
"FieldValueId": {
"type": "integer",
"description": "Current specification value ID."
},
"Text": {
"type": "string",
"description": "Current specification value text."
}
}
}
}
}
}
}
}
}
},
"/api/catalog/pvt/subcollection/{subCollectionId}/stockkeepingunit": {
"post": {
"tags": [
"Legacy subcollection"
],
"summary": "Add SKU to subcollection",
"description": " >⚠️ There are two ways to configure collections, through Legacy CMS Portal or using the Beta Collection module. This endpoint is compatible with [collections configured through the Legacy CMS Portal](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L).\n\nAssociates a single SKU to a Subcollection, which is a [Group](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L#group-types) within a Collection.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Configuration | **CMS Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "subCollectionId",
"in": "path",
"required": true,
"description": "Subcollection'''s unique numerical identifier, which can be obtained by placing a request to [Get subcollection by collection ID](https://developers.vtex.com/vtex-rest-api/reference/catalog-api-get-subcollection-collectionid).",
"schema": {
"type": "integer",
"example": 1
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"SkuId"
],
"properties": {
"SkuId": {
"type": "integer",
"description": "Unique identifier of an SKU.",
"example": 1
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"SubCollectionId": {
"type": "integer",
"description": "Subcollection's unique numerical identifier.",
"example": 17
},
"SkuId": {
"type": "integer",
"description": "Unique identifier of the SKU.",
"example": 1
}
},
"example": {
"SubCollectionId": 17,
"SkuId": 1
}
}
}
}
}
}
}
},
"/api/catalog/pvt/subcollection/{subCollectionId}/stockkeepingunit/{skuId}": {
"delete": {
"tags": [
"Legacy subcollection"
],
"summary": "Delete SKU from subcollection",
"description": " >⚠️ There are two ways to configure collections, through Legacy CMS Portal or using the Beta Collection module. This endpoint is compatible with [collections configured through the Legacy CMS Portal](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L).\n\nDeletes an SKU from a Subcollection, which is a [Group](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L#group-types) within a Collection.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Configuration | **CMS Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "subCollectionId",
"in": "path",
"required": true,
"description": "Subcollection'''s unique numerical identifier, which can be obtained by placing a request to [Get subcollection by collection ID](https://developers.vtex.com/vtex-rest-api/reference/catalog-api-get-subcollection-collectionid).",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "skuId",
"in": "path",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog_system/pub/category/tree/{categoryLevels}": {
"get": {
"tags": [
"Category"
],
"summary": "Get category tree",
"description": "Retrieves the category tree of your store. Get all the category levels registered in the Catalog or define the level up to which you want to get. \r\n> 📘 Onboarding guide \r\n>\r\n> Check the new [Catalog onboarding guide](https://developers.vtex.com/vtex-rest-api/docs/catalog-overview). We created this guide to improve the onboarding experience for developers at VTEX. It assembles all documentation on our Developer Portal about Catalog and is organized by focusing on the developer's journey.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Category** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "CategoryTree",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "categoryLevels",
"in": "path",
"required": true,
"description": "Value of the category level you need to retrieve.",
"schema": {
"type": "string",
"example": "1"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/GetCategoryTree"
}
},
"example": [
{
"id": 1,
"name": "Alimentação",
"hasChildren": true,
"url": "https://lojadobreno.vtexcommercestable.com.br/alimentacao",
"children": [
{
"id": 6,
"name": "Bebedouro",
"hasChildren": false,
"url": "https://lojadobreno.vtexcommercestable.com.br/alimentacao/bebedouro",
"children": [],
"Title": "Bebedouro para Gatos",
"MetaTagDescription": ""
},
{
"id": 7,
"name": "Comedouro",
"hasChildren": false,
"url": "https://lojadobreno.vtexcommercestable.com.br/alimentacao/comedouro",
"children": [],
"Title": "Comedouro para Gatos",
"MetaTagDescription": ""
},
{
"id": 8,
"name": "Biscoitos",
"hasChildren": false,
"url": "https://lojadobreno.vtexcommercestable.com.br/alimentacao/biscoitos",
"children": [],
"Title": "Biscoitos para Gatos",
"MetaTagDescription": ""
},
{
"id": 9,
"name": "Petiscos",
"hasChildren": false,
"url": "https://lojadobreno.vtexcommercestable.com.br/alimentacao/petiscos",
"children": [],
"Title": "Petiscos para Gatos",
"MetaTagDescription": ""
},
{
"id": 10,
"name": "Ração Seca",
"hasChildren": false,
"url": "https://lojadobreno.vtexcommercestable.com.br/alimentacao/racao-seca",
"children": [],
"Title": "Ração Seca para Gatos",
"MetaTagDescription": ""
},
{
"id": 11,
"name": "Ração Úmida",
"hasChildren": false,
"url": "https://lojadobreno.vtexcommercestable.com.br/alimentacao/racao-umida",
"children": [],
"Title": "Ração Úmida para Gatos",
"MetaTagDescription": ""
}
],
"Title": "Alimentação para Gatos",
"MetaTagDescription": ""
},
{
"id": 2,
"name": "Brinquedos",
"hasChildren": true,
"url": "https://lojadobreno.vtexcommercestable.com.br/brinquedos",
"children": [
{
"id": 12,
"name": "Bolinhas",
"hasChildren": false,
"url": "https://lojadobreno.vtexcommercestable.com.br/brinquedos/bolinhas",
"children": [],
"Title": "Bolinhas para Gatos",
"MetaTagDescription": ""
},
{
"id": 13,
"name": "Ratinhos",
"hasChildren": false,
"url": "https://lojadobreno.vtexcommercestable.com.br/brinquedos/ratinhos",
"children": [],
"Title": "Ratinhos",
"MetaTagDescription": ""
},
{
"id": 19,
"name": "Arranhador para gato",
"hasChildren": false,
"url": "https://lojadobreno.vtexcommercestable.com.br/brinquedos/arranhador-para-gato",
"children": [],
"Title": "Brinquedo Arranhador para gatos",
"MetaTagDescription": "Arranhador gatos é indispensável no lar com felinos. Ideais para afiar as unhas e garantir a diversão"
}
],
"Title": "Brinquedos para Gatos",
"MetaTagDescription": ""
}
]
}
}
}
},
"deprecated": false
}
},
"/api/catalog/pvt/category/{categoryId}": {
"get": {
"tags": [
"Category"
],
"summary": "Get category by ID",
"description": "Retrieves general information about a category.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Categories Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "categoryId",
"in": "path",
"required": true,
"description": "Category's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 9289
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 1,
"Name": "Home Appliances",
"FatherCategoryId": null,
"Title": "Home Appliances",
"Description": "Discover our range of home appliances. Find smart vacuums, kitchen and laundry appliances to suit your needs. Order online now.",
"Keywords": "Kitchen, Laundry, Appliances",
"IsActive": true,
"LomadeeCampaignCode": "",
"AdWordsRemarketingCode": "",
"ShowInStoreFront": true,
"ShowBrandFilter": true,
"ActiveStoreFrontLink": true,
"GlobalCategoryId": 3367,
"StockKeepingUnitSelectionMode": "LIST",
"Score": null,
"LinkId": "Alimentacao",
"HasChildren": true
},
"schema": {
"$ref": "#/components/schemas/Category"
}
}
}
}
}
},
"put": {
"tags": [
"Category"
],
"summary": "Update category",
"description": "Updates a previously existing category.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Categories Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "categoryId",
"in": "path",
"required": true,
"description": "Category's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 9289
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"Name",
"Keywords",
"Title",
"Description",
"AdWordsRemarketingCode",
"LomadeeCampaignCode",
"FatherCategoryId",
"GlobalCategoryId",
"ShowInStoreFront",
"IsActive",
"ActiveStoreFrontLink",
"ShowBrandFilter",
"Score",
"StockKeepingUnitSelectionMode"
],
"properties": {
"Name": {
"type": "string",
"description": "Category name.",
"example": "Home Appliances"
},
"Keywords": {
"type": "string",
"description": "Substitute words for the category.",
"example": "Kitchen, Laundry, Appliances"
},
"Title": {
"type": "string",
"description": "Text used in title tag for category page.",
"example": "Home Appliances"
},
"Description": {
"type": "string",
"description": "Text used in meta description tag for category page.",
"example": "Discover our range of home appliances. Find smart vacuums, kitchen and laundry appliances to suit your needs. Order online now."
},
"AdWordsRemarketingCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"example": "Sale",
"nullable": true,
"deprecated": true
},
"LomadeeCampaignCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"example": "Sale",
"nullable": true,
"deprecated": true
},
"FatherCategoryId": {
"type": "integer",
"description": "ID of the parent category, apply in case of category and subcategory.",
"example": 2,
"nullable": true
},
"GlobalCategoryId": {
"type": "integer",
"description": "Google global category ID.",
"example": 222
},
"ShowInStoreFront": {
"type": "boolean",
"description": "If true, the category is shown in the top and side menu.",
"example": true
},
"IsActive": {
"type": "boolean",
"description": "If true, the category page becomes available in store.",
"example": true
},
"ActiveStoreFrontLink": {
"type": "boolean",
"description": "If true, the category link becomes active in store.",
"example": true
},
"ShowBrandFilter": {
"type": "boolean",
"description": "If true, the category page displays a brand filter.",
"example": true
},
"Score": {
"type": "integer",
"description": "Score for search sorting order.",
"example": 3
},
"StockKeepingUnitSelectionMode": {
"type": "string",
"description": "Defines how the SKU will be exhibited",
"example": "SPECIFICATION"
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 1,
"Name": "Home Appliances",
"FatherCategoryId": null,
"Title": "Home Appliances",
"Description": "Discover our range of home appliances. Find smart vacuums, kitchen and laundry appliances to suit your needs. Order online now.",
"Keywords": "Kitchen, Laundry, Appliances",
"IsActive": true,
"LomadeeCampaignCode": "",
"AdWordsRemarketingCode": "",
"ShowInStoreFront": true,
"ShowBrandFilter": true,
"ActiveStoreFrontLink": true,
"GlobalCategoryId": 3367,
"StockKeepingUnitSelectionMode": "LIST",
"Score": null,
"LinkId": "Alimentacao",
"HasChildren": true
},
"schema": {
"$ref": "#/components/schemas/Category"
}
}
}
}
}
}
},
"/api/catalog/pvt/category": {
"post": {
"tags": [
"Category"
],
"summary": "Create category",
"description": "Creates a new category.\r\n\r\nIf there is a need to create a new category with a specific custom ID, specify the `Id` (integer) in the request. Otherwise, VTEX will generate the ID automatically.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Categories Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateCategoryRequest"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 1,
"Name": "Home Appliances",
"FatherCategoryId": null,
"Title": "Home Appliances",
"Description": "Discover our range of home appliances. Find smart vacuums, kitchen and laundry appliances to suit your needs. Order online now.",
"Keywords": "Kitchen, Laundry, Appliances",
"IsActive": true,
"LomadeeCampaignCode": "",
"AdWordsRemarketingCode": "",
"ShowInStoreFront": true,
"ShowBrandFilter": true,
"ActiveStoreFrontLink": true,
"GlobalCategoryId": 3367,
"StockKeepingUnitSelectionMode": "LIST",
"Score": null,
"LinkId": "Alimentacao",
"HasChildren": true
},
"schema": {
"$ref": "#/components/schemas/Category"
}
}
}
}
}
}
},
"/api/catalog/pvt/product/{productId}/similarcategory/": {
"get": {
"tags": [
"Similar category"
],
"summary": "Get similar categories",
"description": "Retrieves similar categories from a product.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Similar Category** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"required": true,
"description": "Product's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": [
{
"ProductId": 1,
"CategoryId": 1
},
{
"ProductId": 1,
"CategoryId": 20
}
],
"schema": {
"type": "array",
"description": "Array of objects with similar category information.",
"items": {
"type": "object",
"description": "Object containing product ID and similar category ID.",
"properties": {
"ProductId": {
"type": "integer",
"description": "Product ID.",
"example": 1
},
"CategoryId": {
"type": "integer",
"description": "Similar category ID.",
"example": 20
}
}
}
}
}
}
}
}
}
},
"/api/catalog/pvt/product/{productId}/similarcategory/{categoryId}": {
"post": {
"tags": [
"Similar category"
],
"summary": "Add similar category",
"description": "Adds a similar category to a product.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Similar Categories Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"required": true,
"description": "Product's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "categoryId",
"in": "path",
"required": true,
"description": "Similar category's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"ProductId": 1,
"StoreId": 1
},
"schema": {
"type": "object",
"description": "Object containing information related to the similar category.",
"properties": {
"ProductId": {
"type": "integer",
"description": "Product ID.",
"example": 1
},
"StoreId": {
"type": "integer",
"description": "Trade policy ID.",
"example": 1
}
}
}
}
}
}
}
},
"delete": {
"tags": [
"Similar category"
],
"summary": "Delete similar category",
"description": "Deletes a similar category from a product.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Similar Categories Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"required": true,
"description": "Product's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "categoryId",
"in": "path",
"required": true,
"description": "Similar category's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog_system/pub/specification/field/listByCategoryId/{categoryId}": {
"get": {
"tags": [
"Category specification"
],
"summary": "Get specifications by category ID",
"description": "Retrieves all specifications from a category by its ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Groups** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SpecificationsByCategoryId",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "categoryId",
"in": "path",
"description": "Category ID.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CategorySpecification"
},
"example": [
{
"Name": "Specification A",
"CategoryId": 1,
"FieldId": 33,
"IsActive": true,
"IsStockKeepingUnit": false
},
{
"Name": "Specification B",
"CategoryId": 1,
"FieldId": 34,
"IsActive": true,
"IsStockKeepingUnit": false
},
{
"Name": "Specification C",
"CategoryId": 1,
"FieldId": 35,
"IsActive": false,
"IsStockKeepingUnit": false
}
]
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pub/specification/field/listTreeByCategoryId/{categoryId}": {
"get": {
"tags": [
"Category specification"
],
"summary": "Get specifications tree by category ID",
"description": "Lists all specifications including the current category and the level zero specifications from a category by its ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Groups** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SpecificationsTreeByCategoryId",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "categoryId",
"in": "path",
"description": "Category ID.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CategorySpecification"
},
"example": [
{
"Name": "Specification A",
"CategoryId": 1,
"FieldId": 33,
"IsActive": true,
"IsStockKeepingUnit": false
},
{
"Name": "Specification B",
"CategoryId": 1,
"FieldId": 34,
"IsActive": true,
"IsStockKeepingUnit": false
},
{
"Name": "Specification C",
"CategoryId": 1,
"FieldId": 35,
"IsActive": false,
"IsStockKeepingUnit": false
}
]
}
}
}
},
"deprecated": false
}
},
"/api/catalog/pvt/subcollection/{subCollectionId}/category": {
"post": {
"tags": [
"Legacy subcollection"
],
"summary": "Associate category to subcollection",
"description": " >⚠️ There are two ways to configure collections, through Legacy CMS Portal or using the Beta Collection module. This endpoint is compatible with [collections configured through the Legacy CMS Portal](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L).\n\nAssociates a single category to a Subcollection, which is a [Group](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L#group-types) within a Collection.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Configuration | **CMS Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "subCollectionId",
"in": "path",
"required": true,
"description": "Subcollection's unique numerical identifier, which can be obtained by placing a request to [Get subcollection by collection ID](https://developers.vtex.com/vtex-rest-api/reference/catalog-api-get-subcollection-collectionid).",
"schema": {
"type": "integer",
"example": 1
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"CategoryId"
],
"properties": {
"CategoryId": {
"type": "integer",
"description": "Unique identifier of a category.",
"example": 0
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"SubCollectionId": {
"type": "integer",
"description": "Subcollection's unique numerical identifier.",
"example": 17
},
"CategoryId": {
"type": "integer",
"description": "Unique identifier of the category.",
"example": 1
}
},
"example": {
"SubCollectionId": 17,
"CategoryId": 1
}
}
}
}
}
}
}
},
"/api/catalog/pvt/subcollection/{subCollectionId}/brand/{categoryId}": {
"delete": {
"tags": [
"Legacy subcollection"
],
"summary": "Delete category from Subcollection",
"description": " >⚠️ There are two ways to configure collections, through Legacy CMS Portal or using the Beta Collection module. This endpoint is compatible with [collections configured through the Legacy CMS Portal](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L).\n\nDeletes a category from a subcollection, which is a [Group](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L#group-types) within a Collection.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Configuration | **CMS Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "subCollectionId",
"in": "path",
"required": true,
"description": "Subcollection's unique numerical identifier, which can be obtained by placing a request to [Get subcollection by dollection ID](https://developers.vtex.com/vtex-rest-api/reference/catalog-api-get-subcollection-collectionid).",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "categoryId",
"in": "path",
"required": true,
"description": "Category's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog_system/pvt/brand/list": {
"get": {
"tags": [
"Brand"
],
"summary": "Get brand list",
"description": "Retrieves all brands registered in the store's Catalog. \r\n>⚠️ This route's response is limited to 20k results. If you need to obtain more results, please use the [Get paginated brand list](https://developers.vtex.com/vtex-rest-api/reference/catalog-api-get-brand-list) endpoint instead to get a paginated response.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Brands** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "BrandList",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": [
{
"id": 9280,
"name": "Brand",
"isActive": true,
"metaTagDescription": "Brand",
"imageUrl": null
},
{
"id": 2000000,
"name": "Orma Carbon",
"isActive": true,
"metaTagDescription": "Orma Carbon",
"imageUrl": null
},
{
"id": 2000001,
"name": "Pedigree",
"isActive": true,
"metaTagDescription": "",
"imageUrl": null
}
],
"schema": {
"type": "array",
"description": "An array with all brands registered in the store.",
"items": {
"$ref": "#/components/schemas/BrandGet"
}
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pvt/brand/pagedlist": {
"get": {
"tags": [
"Brand"
],
"summary": "Get paginated brand list",
"description": "Retrieves all brands registered in the store's Catalog by page number.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Brands** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "BrandListPerPage",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "pageSize",
"in": "query",
"required": true,
"description": "Quantity of brands per page.",
"schema": {
"type": "integer",
"example": 5
}
},
{
"name": "page",
"in": "query",
"required": true,
"description": "Page number of the brand list.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"items",
"paging"
],
"properties": {
"items": {
"type": "array",
"description": "Array of objects with information of the store's brands.",
"items": {
"$ref": "#/components/schemas/BrandGet"
}
},
"paging": {
"type": "object",
"description": "Object with pagination information.",
"example": {
"page": 1,
"perPage": 3,
"total": 6,
"pages": 2
},
"required": [
"page",
"perPage",
"total",
"pages"
],
"properties": {
"page": {
"type": "integer",
"description": "Page number of the brand list.",
"example": 1
},
"perPage": {
"type": "integer",
"description": "Quantity of brands per page.",
"example": 3
},
"total": {
"type": "integer",
"description": "Total of brands in the store.",
"example": 6
},
"pages": {
"type": "integer",
"description": "Total number of pages.",
"example": 2
}
}
}
}
}
}
}
}
}
}
},
"/api/catalog_system/pvt/brand/{brandId}": {
"get": {
"tags": [
"Brand"
],
"summary": "Get brand by ID",
"description": "Retrieves a specific brand by its ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Brands** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "Brand",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "brandId",
"in": "path",
"description": "Brand ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "123"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BrandGet"
},
"example": {
"id": 7000000,
"name": "Pedigree",
"isActive": true,
"metaTagDescription": "Pedigree",
"imageUrl": null
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog/pvt/brand": {
"post": {
"tags": [
"Brand"
],
"summary": "Create brand",
"description": "Creates a new brand.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Brands Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BrandCreateUpdate"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 2000013,
"Name": "Orma Carbon",
"Text": "Orma Carbon",
"Keywords": "orma",
"SiteTitle": "Orma Carbon",
"Active": true,
"MenuHome": true,
"AdWordsRemarketingCode": "",
"LomadeeCampaignCode": "",
"Score": null,
"LinkId": "orma-carbon"
},
"schema": {
"$ref": "#/components/schemas/BrandCreateUpdate"
}
}
}
}
}
}
},
"/api/catalog/pvt/brand/{brandId}": {
"get": {
"tags": [
"Brand"
],
"summary": "Get brand and context",
"description": "Retrieves information about a specific brand and its context.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Brand Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "brandId",
"in": "path",
"description": "Brand ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "123"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 2000013,
"Name": "Orma Carbon",
"Text": "Orma Carbon",
"Keywords": "orma",
"SiteTitle": "Orma Carbon",
"Active": true,
"MenuHome": true,
"AdWordsRemarketingCode": "",
"LomadeeCampaignCode": "",
"Score": null,
"LinkId": "orma-carbon"
},
"schema": {
"$ref": "#/components/schemas/BrandCreateUpdate"
}
}
}
}
}
},
"put": {
"tags": [
"Brand"
],
"summary": "Update brand",
"description": "Updates a previously existing brand.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Brand Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"name": "brandId",
"in": "path",
"required": true,
"description": "Brand's unique numerical identifier.",
"schema": {
"type": "string",
"example": "123"
}
},
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BrandCreateUpdate"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 2000013,
"Name": "Orma Carbon",
"Text": "Orma Carbon",
"Keywords": "orma",
"SiteTitle": "Orma Carbon",
"Active": true,
"MenuHome": true,
"AdWordsRemarketingCode": "",
"LomadeeCampaignCode": "",
"Score": null,
"LinkId": "orma-carbon"
},
"schema": {
"$ref": "#/components/schemas/BrandCreateUpdate"
}
}
}
}
}
},
"delete": {
"tags": [
"Brand"
],
"summary": "Delete brand",
"description": "Deletes an existing brand.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Brand Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"name": "brandId",
"in": "path",
"required": true,
"description": "Brand's unique numerical identifier.",
"schema": {
"type": "string",
"example": "123"
}
},
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/subcollection/{subCollectionId}/brand": {
"post": {
"tags": [
"Legacy subcollection"
],
"summary": "Associate brand to subcollection",
"description": " >⚠️ There are two ways to configure collections, through Legacy CMS Portal or using the Beta Collection module. This endpoint is compatible with [collections configured through the Legacy CMS Portal](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L).\n\nAssociates a single brand to a Subcollection, which is a [Group](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L#group-types) within a Collection.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Configuration | **CMS Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "subCollectionId",
"in": "path",
"required": true,
"description": "Subcollection's unique numerical identifier, which can be obtained by placing a request to [Get subcollection by collection ID](https://developers.vtex.com/vtex-rest-api/reference/catalog-api-get-subcollection-collectionid).",
"schema": {
"type": "integer",
"example": 1
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"BrandId"
],
"properties": {
"BrandId": {
"type": "integer",
"description": "Unique identifier of a brand.",
"example": 2000000
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"SubCollectionId": {
"type": "integer",
"description": "Subcollection's unique numerical identifier.",
"example": 17
},
"BrandId": {
"type": "integer",
"description": "Unique identifier of the brand.",
"example": 2000000
}
},
"example": {
"SubCollectionId": 17,
"BrandId": 2000000
}
}
}
}
}
}
}
},
"/api/catalog/pvt/subcollection/{subCollectionId}/brand/{brandId}": {
"delete": {
"tags": [
"Legacy subcollection"
],
"summary": "Delete brand from subcollection",
"description": " >⚠️ There are two ways to configure collections, through Legacy CMS Portal or using the Beta Collection module. This endpoint is compatible with [collections configured through the Legacy CMS Portal](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L).\n\nDeletes a brand from a Subcollection, which is a [Group](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L#group-types) within a Collection.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Configuration | **CMS Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "subCollectionId",
"in": "path",
"required": true,
"description": "Subcollection's unique numerical identifier, which can be obtained by placing a request to [Get subcollection by collection ID](https://developers.vtex.com/vtex-rest-api/reference/catalog-api-get-subcollection-collectionid).",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "brandId",
"in": "path",
"required": true,
"description": "Brand's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/attachment/{attachmentid}": {
"get": {
"tags": [
"Attachment"
],
"summary": "Get attachment by ID",
"description": "Gets information about a registered attachment. \r\n >⚠️ To understand the specific syntax for Assembly Options attachments, read the [Assembly Options](https://help.vtex.com/en/tutorial/assembly-options--5x5FhNr4f5RUGDEGWzV1nH#assembly-options-syntax) documentation.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Configuration | **CMS Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"name": "attachmentid",
"in": "path",
"required": true,
"description": "Attachment ID.",
"schema": {
"type": "string",
"example": "8"
}
},
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AttachmentResponse"
}
}
}
}
}
},
"put": {
"tags": [
"Attachment"
],
"summary": "Update attachment",
"description": "Updates a previously existing SKU attachment with new information. \r\n >⚠️ To understand the specific syntax for Assembly Options attachments, read the [Assembly Options](https://help.vtex.com/en/tutorial/assembly-options--5x5FhNr4f5RUGDEGWzV1nH#assembly-options-syntax) documentation.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Configuration | **CMS Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"name": "attachmentid",
"in": "path",
"required": true,
"description": "Attachment ID.",
"schema": {
"type": "string",
"example": "vtexcommercestable"
}
},
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AttachmentRequest"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AttachmentResponse"
}
}
}
}
}
},
"delete": {
"tags": [
"Attachment"
],
"summary": "Delete attachment",
"description": "Deletes a previously existing SKU attachment.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Configuration | **CMS Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"name": "attachmentid",
"in": "path",
"required": true,
"description": "Attachment ID.",
"schema": {
"type": "string",
"example": "vtexcommercestable"
}
},
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/attachment": {
"post": {
"tags": [
"Attachment"
],
"summary": "Create attachment",
"description": "Creates a new SKU attachment.\r\n >⚠️ To understand the specific syntax for Assembly Options attachments, read the [Assembly Options](https://help.vtex.com/en/tutorial/assembly-options--5x5FhNr4f5RUGDEGWzV1nH#assembly-options-syntax) documentation.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Configuration | **CMS Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AttachmentRequest"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AttachmentResponse"
}
}
}
}
}
}
},
"/api/catalog/pvt/attachments": {
"get": {
"tags": [
"Attachment"
],
"summary": "Get all attachments",
"description": "Retrieves information about all registered attachments. \r\n >⚠️ To understand the specific syntax for Assembly Options attachments, read the [Assembly Options](https://help.vtex.com/en/tutorial/assembly-options--5x5FhNr4f5RUGDEGWzV1nH#assembly-options-syntax) documentation.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Configuration | **CMS Management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"Page": {
"type": "integer",
"description": "Current page of results.",
"example": 1
},
"Size": {
"type": "integer",
"description": "Total number of results in the current page.",
"example": 11
},
"TotalRows": {
"type": "integer",
"description": "Total number of rows with results.",
"example": 11
},
"TotalPage": {
"type": "integer",
"description": "Total number of pages with results.",
"example": 1
},
"Data": {
"type": "array",
"description": "Array containing attachments data.",
"items": {
"$ref": "#/components/schemas/AttachmentResponse"
}
}
}
}
}
}
}
}
}
},
"/api/catalog_system/pvt/collection/search": {
"get": {
"tags": [
"Collection Beta"
],
"summary": "Get all collections",
"description": "Retrieves a list of all collections matching a filter.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Collection | **Read Collections** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "GET-AllCollections",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "page",
"in": "query",
"description": "Page number.",
"required": true,
"style": "form",
"schema": {
"type": "integer",
"example": 2
}
},
{
"name": "pageSize",
"in": "query",
"description": "Number of the items of the page.",
"required": true,
"style": "form",
"schema": {
"type": "integer",
"example": 15
}
},
{
"name": "orderByAsc",
"in": "query",
"description": "Defines if the items of the page are in ascending order.",
"required": true,
"style": "form",
"schema": {
"type": "boolean",
"example": true
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example":{
"paging": {
"page": 1,
"perPage": 11,
"total": 11,
"pages": 1,
"limit": 3000
},
"items": [
{
"id": 149,
"name": "Varejão",
"searchable": true,
"highlight": true,
"dateFrom": "2020-02-14T11:26:00",
"dateTo": "2070-02-14T11:26:00",
"totalSku": 2,
"totalProducts": 1,
"type": "Hybrid",
"lastModifiedBy": null
},
{
"id": 150,
"name": "Varejão",
"searchable": false,
"highlight": false,
"dateFrom": "2017-09-27T10:47:00",
"dateTo": "2027-09-27T10:47:00",
"totalSku": 0,
"totalProducts": 0,
"type": "Manual",
"lastModifiedBy": null
},
{
"id": 151,
"name": "asdfghj",
"searchable": true,
"highlight": true,
"dateFrom": "2020-05-20T11:50:00",
"dateTo": "2070-05-20T11:50:00",
"totalSku": 5,
"totalProducts": 5,
"type": "Hybrid",
"lastModifiedBy": null
},
{
"id": 152,
"name": "George",
"searchable": true,
"highlight": true,
"dateFrom": "2020-05-21T16:26:00",
"dateTo": "2070-05-31T23:59:00",
"totalSku": 2,
"totalProducts": 1,
"type": "Hybrid",
"lastModifiedBy": null
},
{
"id": 153,
"name": "Test",
"searchable": true,
"highlight": false,
"dateFrom": "2017-09-27T10:47:00",
"dateTo": "2017-09-27T10:47:00",
"totalSku": 0,
"totalProducts": 0,
"type": "Manual",
"lastModifiedBy": null
},
{
"id": 154,
"name": "Júlia",
"searchable": true,
"highlight": true,
"dateFrom": "2021-01-21T19:30:00",
"dateTo": "2070-01-21T19:30:00",
"totalSku": 2,
"totalProducts": 2,
"type": "Manual",
"lastModifiedBy": null
},
{
"id": 155,
"name": "aaa",
"searchable": false,
"highlight": false,
"dateFrom": "2021-02-08T16:19:00",
"dateTo": "2021-02-08T16:19:00",
"totalSku": 3,
"totalProducts": 3,
"type": "Manual",
"lastModifiedBy": null
},
{
"id": 156,
"name": "All",
"searchable": true,
"highlight": false,
"dateFrom": "2010-01-01T00:00:00",
"dateTo": "2070-01-01T00:00:00",
"totalSku": 0,
"totalProducts": 0,
"type": "Automatic",
"lastModifiedBy": null
},
{
"id": 157,
"name": "Inverno",
"searchable": false,
"highlight": false,
"dateFrom": "2021-07-12T16:00:00",
"dateTo": "2021-09-23T16:00:00",
"totalSku": 2,
"totalProducts": 2,
"type": "Manual",
"lastModifiedBy": null
},
{
"id": 158,
"name": "Coleção halloween",
"searchable": false,
"highlight": false,
"dateFrom": "2021-10-22T17:56:00",
"dateTo": "2070-10-22T17:56:00",
"totalSku": 2,
"totalProducts": 2,
"type": "Manual",
"lastModifiedBy": null
},
{
"id": 159,
"name": "Winter",
"searchable": true,
"highlight": false,
"dateFrom": "2021-09-27T10:47:00",
"dateTo": "2027-09-27T10:47:00",
"totalSku": 0,
"totalProducts": 0,
"type": "Manual",
"lastModifiedBy": null
}
]
},
"schema":{
"type": "object",
"properties": {
"paging": {
"description": "Object with information of the pagination.",
"type": "object",
"properties": {
"page": {
"description": "Page number.",
"type": "integer"
},
"perPage": {
"description": "Items per page.",
"type": "integer"
},
"total": {
"description": "Total of items.",
"type": "integer"
},
"pages": {
"description": "Total pages.",
"type": "integer"
},
"limit": {
"description": "Limit of items displayed on each page.",
"type": "integer"
}
}
},
"items": {
"description": "Array with information the collections.",
"type": "array",
"items": {
"description": "Collection information.",
"type": "object",
"properties": {
"id": {
"description": "Collection ID.",
"type": "integer"
},
"name": {
"description": "Collection name.",
"type": "string"
},
"searchable": {
"description": "If the collection is searchable by using the search bar.",
"type": "boolean"
},
"highlight": {
"description": "If the collection is highlighted.",
"type": "boolean"
},
"dateFrom": {
"description": "Initial date of the collection.",
"type": "string"
},
"dateTo": {
"description": "Final date of the collection.",
"type": "string"
},
"totalSku": {
"description": "Total of SKUs contained in the collection.",
"type": "integer"
},
"totalProducts": {
"description": "Total of products contained in the collection.",
"type": "integer"
},
"type": {
"description": "[Type of the collection](https://help.vtex.com/en/tutorial/collection-types--5tKnhh8tMGIrVL7Fqirq7n), * *Manual**, **Automatic** and **Hybrid**.",
"type": "string"
},
"lastModifiedBy": {
"description": "Last date that the collection was updated.",
"type": "string"
}
}
}
}
}
}
}
}
}
}
}
},
"/api/catalog/pvt/collection/inactive": {
"get": {
"tags": [
"Collection Beta"
],
"summary": "Get all inactive collections",
"description": "Retrieves a list of Collection IDs of the inactive collections.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Collection | **Read Collections** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "GET-AllInactiveCollections",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example":[
153,
155,
157
],
"schema":{
"type": "array",
"description": "Array with inactive collections ID.",
"items":{
"type": "integer",
"description": "Inactive collection ID."
}
}
}
}
}
}
}
},
"/api/catalog/pvt/collection/": {
"post": {
"tags": [
"Collection Beta"
],
"summary": "Create Collection",
"description": "Creates a new collection.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Collection | **Write Collections** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "POST-CreateCollection",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"Name",
"Description",
"Searchable",
"Highlight",
"DateFrom",
"DateTo",
"TotalProducts",
"Type"
],
"properties": {
"Name": {
"type": "string",
"description": "Collection's name.",
"example": "Halloween costumes"
},
"Description": {
"type": "string",
"description": "Collection's description for internal use, with the collection's details. It will not be used for search engines.",
"example": "HomeHalloween"
},
"Searchable": {
"type": "boolean",
"description": "Option making the collection searchable in the store.",
"example": false
},
"Highlight": {
"type": "boolean",
"description": "Option if you want the collection to highlight specific products using a tag.",
"example": false
},
"DateFrom": {
"type": "string",
"description": "Collection start date and time. If a future date and time are set, the collection will have a scheduled status.",
"example": "2020-11-26T15:23:00"
},
"DateTo": {
"type": "string",
"description": "Collection end date and time.",
"example": "2069-11-26T15:23:00"
}
}
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example":{
"Id": 160,
"Name": "Halloween costumes",
"Description": "HomeHalloween",
"Searchable": true,
"Highlight": false,
"DateFrom": "2020-11-26T15:23:00",
"DateTo": "2069-11-26T15:23:00",
"TotalProducts": 0,
"Type": "Manual"
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Collection's ID."
},
"Name": {
"type": "string",
"description": "Collection's name."
},
"Description": {
"type": "string",
"description": "Collection's description for internal use, with the collection's details. It will not be used for search engines."
},
"Searchable": {
"type": "boolean",
"description": "Option making the collection searchable in the store."
},
"Highlight": {
"type": "boolean",
"description": "Option if you want the collection to highlight specific products using a tag."
},
"DateFrom": {
"type": "string",
"description": "Collection start date and time. If a future date and time are set, the collection will have a scheduled status."
},
"DateTo": {
"type": "string",
"description": "Collection end date and time."
},
"TotalProducts": {
"type": "integer",
"description": "Number of products contained in the collection."
},
"Type": {
"type": "string",
"description": "[Type of the collection](https://help.vtex.com/en/tutorial/collection-types--5tKnhh8tMGIrVL7Fqirq7n)."
}
}
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pvt/collection/search/{searchTerms}": {
"get": {
"tags": [
"Collection Beta"
],
"summary": "Get Collections by search terms",
"description": "Retrieves a list of collections matching a filter.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Collection | **Read Collections** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "GET-Collectionsbyseachterms",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "searchTerms",
"in": "path",
"description": "String that will search for a collection related to it.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "costume"
}
},
{
"name": "page",
"in": "query",
"description": "Page number.",
"required": false,
"style": "form",
"schema": {
"type": "integer",
"example": 2
}
},
{
"name": "pageSize",
"in": "query",
"description": "Number of the items of the page.",
"required": false,
"style": "form",
"schema": {
"type": "integer",
"example": 15
}
},
{
"name": "orderByAsc",
"in": "query",
"description": "Defines if the items of the page are in ascending order.",
"required": false,
"style": "form",
"schema": {
"type": "boolean",
"example": true
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example":{
"paging": {
"page": 1,
"perPage": 20,
"total": 2,
"pages": 1,
"limit": 3000
},
"items": [
{
"id": 158,
"name": "Coleção halloween",
"searchable": false,
"highlight": false,
"dateFrom": "2021-10-22T17:56:00",
"dateTo": "2070-10-22T17:56:00",
"totalSku": 2,
"totalProducts": 2,
"type": "Manual",
"lastModifiedBy": null
},
{
"id": 160,
"name": "Halloween costumes",
"searchable": true,
"highlight": false,
"dateFrom": "2020-11-26T15:23:00",
"dateTo": "2069-11-26T15:23:00",
"totalSku": 0,
"totalProducts": 0,
"type": "Manual",
"lastModifiedBy": null
}
]
},
"schema":{
"type": "object",
"properties": {
"paging": {
"description": "Object with information of the pagination.",
"type": "object",
"properties": {
"page": {
"description": "Page number.",
"type": "integer"
},
"perPage": {
"description": "Items per page.",
"type": "integer"
},
"total": {
"description": "Total of items.",
"type": "integer"
},
"pages": {
"description": "Total pages.",
"type": "integer"
},
"limit": {
"description": "Limit of items displayed on each page.",
"type": "integer"
}
}
},
"items": {
"description": "Array with information the collections.",
"type": "array",
"items": {
"description": "Collection information.",
"type": "object",
"properties": {
"id": {
"description": "Collection ID.",
"type": "integer"
},
"name": {
"description": "Collection name.",
"type": "string"
},
"searchable": {
"description": "If the collection is searchable by using the search bar.",
"type": "boolean"
},
"highlight": {
"description": "If the collection is highlighted.",
"type": "boolean"
},
"dateFrom": {
"description": "Initial date of the collection.",
"type": "string"
},
"dateTo": {
"description": "Final date of the collection.",
"type": "string"
},
"totalSku": {
"description": "Total of SKUs contained in the collection.",
"type": "integer"
},
"totalProducts": {
"description": "Total of products contained in the collection.",
"type": "integer"
},
"type": {
"description": "[Type of the collection](https://help.vtex.com/en/tutorial/collection-types--5tKnhh8tMGIrVL7Fqirq7n), * *Manual**, **Automatic** and **Hybrid**.",
"type": "string"
},
"lastModifiedBy": {
"description": "Last date that the collection was updated.",
"type": "string"
}
}
}
}
}
}
}
}
}
}
}
},
"/api/catalog/pvt/collection/stockkeepingunit/importfileexample": {
"get": {
"tags": [
"Collection Beta"
],
"summary": "Import collection file example",
"description": "Imports a sample of the imported XLS file. You need to save the response file to your device.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Collection | **Read Collections** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "GET-Importfileexample",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/xml":{
"schema":{
"description": "XML file."
}
}
}
}
}
}
},
"/api/catalog/pvt/collection/{collectionId}/stockkeepingunit/importinsert": {
"post": {
"tags": [
"Collection Beta"
],
"summary": "Add products to collection by imported file",
"description": "Adds products to a collection from the request body file. The file must be an imported template.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Marketing | **Product Collections XML** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "POST-Addproductsbyimportfile",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "collectionId",
"in": "path",
"description": "Collection's unique identifier.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 1
}
}
],
"requestBody": {
"content": {
"multipart/form-data": {
"schema": {
"type": "object",
"properties": {
"file": {
"format": "binary",
"description": "XML file with information about products to be added to a collection. The file must be an imported template from [Import collection file example](https://developers.vtex.com/vtex-developer-docs/reference/get-importfileexample) endpoint."
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/collection/{collectionId}/stockkeepingunit/importexclude": {
"post": {
"tags": [
"Collection Beta"
],
"summary": "Remove products from collection by imported file",
"description": "Removes products from a collection from the request body file. The file must be an imported template.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Collection | **Write Collections** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "POST-Removeproductsbyimportfile",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "collectionId",
"in": "path",
"description": "Collection's unique identifier.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 1
}
}
],
"requestBody": {
"content": {
"multipart/form-data": {
"schema": {
"type": "object",
"properties": {
"file": {
"format": "binary",
"description": "XML file with information about products to be added to a collection. The file must be an imported template from [Import collection file example](https://developers.vtex.com/vtex-developer-docs/reference/get-importfileexample) endpoint."
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/collection/{collectionId}/products": {
"get": {
"tags": [
"Collection Beta"
],
"summary": "Get products from a collection",
"description": "Retrieves information about the products from a collection.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Collection | **Read Collections** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "GET-Productsfromacollection",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "collectionId",
"in": "path",
"description": "Collection's unique identifier.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "page",
"in": "query",
"description": "Page number.",
"required": false,
"style": "form",
"schema": {
"type": "integer",
"example": 2
}
},
{
"name": "pageSize",
"in": "query",
"description": "Number of the items of the page.",
"required": false,
"style": "form",
"schema": {
"type": "integer",
"example": 15
}
},
{
"name": "Filter",
"in": "query",
"description": "Filter used to refine the collection's products.",
"required": false,
"style": "form",
"schema": {
"type": "string",
"example": "Pre launch"
}
},
{
"name": "Active",
"in": "query",
"description": "Defines if the status of the product is active or not.",
"required": false,
"style": "form",
"schema": {
"type": "boolean",
"example": true
}
},
{
"name": "Visible",
"in": "query",
"description": "Defines if the product is visible on the store or not.",
"required": false,
"style": "form",
"schema": {
"type": "boolean",
"example": true
}
},
{
"name": "CategoryId",
"in": "query",
"description": "Product's category unique identifier.",
"required": false,
"style": "form",
"schema": {
"type": "integer",
"example": 12
}
},
{
"name": "BrandId",
"in": "query",
"description": "Product's brand unique identifier.",
"required": false,
"style": "form",
"schema": {
"type": "integer",
"example": 3
}
},
{
"name": "SupplierId",
"in": "query",
"description": "Product's supplier unique identifier.",
"required": false,
"style": "form",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "SalesChannelId",
"in": "query",
"description": "Product's trade policy unique identifier.",
"required": false,
"style": "form",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "ReleaseFrom",
"in": "query",
"description": "Product past release date.",
"required": false,
"style": "form",
"schema": {
"type": "string",
"example": "2069-11-26T15:23:00"
}
},
{
"name": "ReleaseTo",
"in": "query",
"description": "Product future release date.",
"required": false,
"style": "form",
"schema": {
"type": "string",
"example": "2069-11-26T15:23:00"
}
},
{
"name": "SpecificationProduct",
"in": "query",
"description": "Product specification field Value. You must also fill in `SpecificationFieldId` to use this parameter.",
"required": false,
"style": "form",
"schema": {
"type": "string",
"example": "M"
}
},
{
"name": "SpecificationFieldId",
"in": "query",
"description": "Product specification field unique identifier.",
"required": false,
"style": "form",
"schema": {
"type": "integer",
"example": 40
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json":{
"schema":{
"type": "object",
"properties": {
"Page": {
"description": "Page number.",
"type": "integer"
},
"Size": {
"description": "Page list size.",
"type": "integer"
},
"TotalRows": {
"description": "Total rows.",
"type": "integer"
},
"TotalPage": {
"description": "Total pages.",
"type": "integer"
},
"Data": {
"description": "Array of object with information about the products of the collection.",
"type": "array",
"items": {
"description": "Product information.",
"type": "object",
"properties": {
"ProductId": {
"description": "Product ID.",
"type": "integer"
},
"SkuId": {
"description": "SKU ID.",
"type": "integer"
},
"SubCollectionId": {
"description": "Subcollection ID.",
"type": "integer"
},
"Position": {
"description": "Position of the product in the collection.",
"type": "integer"
},
"ProductName": {
"description": "Product name.",
"type": "string"
},
"SkuImageUrl": {
"description": "SKU image URL.",
"type": "string"
}
}
}
}
}
},
"example": {
"Page": 1,
"Size": 2,
"TotalRows": 2,
"TotalPage": 1,
"Data": [
{
"ProductId": 1,
"SkuId": 1,
"SubCollectionId": 24,
"Position": 1,
"ProductName": "Ração Royal Canin Feline Urinary",
"SkuImageUrl": "https://lojadobreno.vteximg.com.br/arquivos/ids/155450"
},
{
"ProductId": 2,
"SkuId": 3,
"SubCollectionId": 24,
"Position": 2,
"ProductName": "Caixa de Areia Azul Petmate",
"SkuImageUrl": "https://lojadobreno.vteximg.com.br/arquivos/ids/155451"
}
]
}
}
}
}
}
}
},
"/api/catalog/pvt/collection/{collectionId}": {
"get": {
"tags": [
"Legacy collection"
],
"summary": "Get collection by ID",
"description": " >⚠️ There are two ways to configure collections, through Legacy CMS Portal or using the Beta Collection module. This endpoint is compatible with [collections configured through the Legacy CMS Portal](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L).\n\nRetrieves general information of a Collection.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Collection | **Read Collections** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "collectionId",
"in": "path",
"required": true,
"description": "Collection's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 151
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Collection ID."
},
"Name": {
"type": "string",
"description": "Collection name."
},
"Description": {
"type": "string",
"description": "Collection description.",
"nullable": true
},
"Searchable": {
"type": "boolean",
"description": "Defines if the collection is searchable or not."
},
"Highlight": {
"type": "boolean",
"description": "Defines if the collection is highlighted or not."
},
"DateFrom": {
"type": "string",
"description": "Initial value date for the collection."
},
"DateTo": {
"type": "string",
"description": "Final value date for the collection."
},
"TotalProducts": {
"type": "integer",
"description": "Total quantity of products in the collection."
},
"Type": {
"type": "string",
"description": "[Type of the collection](https://help.vtex.com/en/tutorial/collection-types--5tKnhh8tMGIrVL7Fqirq7n)."
}
}
},
"example":{
"Id":150,
"Name":"Test",
"Description":"Winter outfits.",
"Searchable":true,
"Highlight":false,
"DateFrom":"2017-09-27T10:47:00",
"DateTo":"2017-09-27T10:47:00",
"TotalProducts":150,
"Type":"Manual"
}
}
}
}
}
},
"put": {
"tags": [
"Legacy collection"
],
"summary": "Update Collection",
"description": " >⚠️ There are two ways to configure collections, through Legacy CMS Portal or using the Beta Collection module. This endpoint is compatible with [collections configured through the Legacy CMS Portal](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L).\n\nUpdates a previously created Collection.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Collection | **Write Collections** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "collectionId",
"in": "path",
"required": true,
"description": "Collection's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 151
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"Name",
"Searchable",
"Highlight",
"DateFrom",
"DateTo"
],
"properties": {
"Name": {
"type": "string",
"description": "Collection name.",
"example": "Test"
},
"Searchable": {
"type": "boolean",
"description": "Defines if the collection is searchable or not.",
"example": true
},
"Highlight": {
"type": "boolean",
"description": "Defines if the collection is highlighted or not.",
"example": false
},
"DateFrom": {
"type": "string",
"description": "Initial value date for the collection.",
"example": "2017-09-27T10:47:00"
},
"DateTo": {
"type": "string",
"description": "Final value date for the collection.",
"example": "2017-09-27T10:47:00"
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Collection ID."
},
"Name": {
"type": "string",
"description": "Collection name."
},
"Description": {
"type": "string",
"description": "Collection description.",
"nullable": true
},
"Searchable": {
"type": "boolean",
"description": "Defines if the collection is searchable or not."
},
"Highlight": {
"type": "boolean",
"description": "Defines if the collection is highlighted or not."
},
"DateFrom": {
"type": "string",
"description": "Initial value date for the collection."
},
"DateTo": {
"type": "string",
"description": "Final value date for the collection."
},
"TotalProducts": {
"type": "integer",
"description": "Total quantity of products in the collection."
},
"Type": {
"type": "string",
"description": "[Type of the collection](https://help.vtex.com/en/tutorial/collection-types--5tKnhh8tMGIrVL7Fqirq7n)."
}
}
},
"example":{
"Id":150,
"Name":"Test",
"Description":"Winter outfits.",
"Searchable":true,
"Highlight":false,
"DateFrom":"2017-09-27T10:47:00",
"DateTo":"2017-09-27T10:47:00",
"TotalProducts":150,
"Type":"Manual"
}
}
}
}
}
},
"delete": {
"tags": [
"Legacy collection"
],
"summary": "Delete Collection",
"description": " >⚠️ There are two ways to configure collections, through Legacy CMS Portal or using the Beta Collection module. This endpoint is compatible with [collections configured through the Legacy CMS Portal](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L).\n\nDeletes a previously existing Collection.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Collection | **Write Collections** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "collectionId",
"in": "path",
"required": true,
"description": "Collection's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 151
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/collection": {
"post": {
"tags": [
"Legacy collection"
],
"summary": "Create collection",
"description": " >⚠️ There are two ways to configure collections, through Legacy CMS Portal or using the Beta Collection module. This endpoint is compatible with [collections configured through the Legacy CMS Portal](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L).\n\nCreates a new collection.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Collection | **Write Collections** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"Name",
"Searchable",
"Highlight",
"DateFrom",
"DateTo"
],
"properties": {
"Name": {
"type": "string",
"description": "Collection name.",
"example": "Test"
},
"Searchable": {
"type": "boolean",
"description": "Defines if the collection is searchable or not.",
"example": true
},
"Highlight": {
"type": "boolean",
"description": "Defines if the collection is highlighted or not.",
"example": false
},
"DateFrom": {
"type": "string",
"description": "Initial value date for the collection.",
"example": "2017-09-27T10:47:00"
},
"DateTo": {
"type": "string",
"description": "Final value date for the collection.",
"example": "2017-09-27T10:47:00"
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Collection ID."
},
"Name": {
"type": "string",
"description": "Collection name."
},
"Description": {
"type": "string",
"description": "Collection description.",
"nullable": true
},
"Searchable": {
"type": "boolean",
"description": "Defines if the collection is searchable or not."
},
"Highlight": {
"type": "boolean",
"description": "Defines if the collection is highlighted or not."
},
"DateFrom": {
"type": "string",
"description": "Initial value date for the collection."
},
"DateTo": {
"type": "string",
"description": "Final value date for the collection."
},
"TotalProducts": {
"type": "integer",
"description": "Total quantity of products in the collection."
},
"Type": {
"type": "string",
"description": "[Type of the collection](https://help.vtex.com/en/tutorial/collection-types--5tKnhh8tMGIrVL7Fqirq7n)."
}
}
},
"example":{
"Id":150,
"Name":"Test",
"Description":"Winter outfits.",
"Searchable":true,
"Highlight":false,
"DateFrom":"2017-09-27T10:47:00",
"DateTo":"2017-09-27T10:47:00",
"TotalProducts":150,
"Type":"Manual"
}
}
}
}
}
}
},
"/api/catalog/pvt/collection/{collectionId}/subcollection": {
"get": {
"tags": [
"Legacy subcollection"
],
"summary": "Get subcollection by collection ID",
"description": " >⚠️ There are two ways to configure collections, through Legacy CMS Portal or using the Beta Collection module. This endpoint is compatible with [collections configured through the Legacy CMS Portal](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L).\n\nRetrieves all subcollections given a collection ID. A subcollection is a [Group](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L#group-types) within a collection.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Collection | **Read Collections** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "collectionId",
"in": "path",
"required": true,
"description": "Collection's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 151
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": [
{
"Id": 17,
"CollectionId": 151,
"Name": "group 1",
"Type": "Inclusive",
"PreSale": false,
"Release": false
},
{
"Id": 18,
"CollectionId": 151,
"Name": "group 2",
"Type": "Inclusive",
"PreSale": false,
"Release": false
}
],
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Subcollection ID."
},
"CollectionId": {
"type": "integer",
"description": "Collection ID."
},
"Name": {
"type": "string",
"description": "SubCollection name."
},
"Type": {
"type": "string",
"description": "Either `“Exclusive”` (all the products contained in it will not be used) or `“Inclusive”` (all the products contained in it will be used)."
},
"PreSale": {
"type": "boolean",
"description": "Defines if the collection is on PreSale."
},
"Release": {
"type": "boolean",
"description": "Defines if the collection is a new released one."
}
}
}
}
}
}
}
}
}
},
"/api/catalog/pvt/subcollection/{subCollectionId}": {
"get": {
"tags": [
"Legacy subcollection"
],
"summary": "Get subcollection by subcollection ID",
"description": " >⚠️ There are two ways to configure collections, through Legacy CMS Portal or using the Beta Collection module. This endpoint is compatible with [collections configured through the Legacy CMS Portal](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L).\n\nRetrieves information about a subcollection, which is a [Group](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L#group-types) within a collection.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Collection | **Read Collections** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "subCollectionId",
"in": "path",
"required": true,
"description": "Subcollection's unique numerical identifier, which can be obtained by placing a request to [Get subcollection by collection ID](https://developers.vtex.com/vtex-rest-api/reference/catalog-api-get-subcollection-collectionid).",
"schema": {
"type": "integer",
"example": 17
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 17,
"CollectionId": 151,
"Name": "group 1",
"Type": "Inclusive",
"PreSale": false,
"Release": false
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Subcollection ID."
},
"CollectionId": {
"type": "integer",
"description": "Collection ID."
},
"Name": {
"type": "string",
"description": "Subcollection name."
},
"Type": {
"type": "string",
"description": "Either `“Exclusive”` (all the products contained in it will not be used) or `“Inclusive”` (all the products contained in it will be used)."
},
"PreSale": {
"type": "boolean",
"description": "Defines if the collection is on PreSale."
},
"Release": {
"type": "boolean",
"description": "Defines if the collection is a new released one."
}
}
}
}
}
}
}
},
"put": {
"tags": [
"Legacy subcollection"
],
"summary": "Update subcollection",
"description": " >⚠️ There are two ways to configure collections, through Legacy CMS Portal or using the Beta Collection module. This endpoint is compatible with [collections configured through the Legacy CMS Portal](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L).\n\nUpdates a previously created subcollection, which is a [Group](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L#group-types) within a collection.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Collection | **Write Collections** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "subCollectionId",
"in": "path",
"required": true,
"description": "Subcollection's unique numerical identifier, which can be obtained by placing a request to [Get subcollection by collection ID](https://developers.vtex.com/vtex-rest-api/reference/catalog-api-get-subcollection-collectionid).",
"schema": {
"type": "integer",
"example": 17
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"CollectionId",
"Name",
"Type",
"PreSale",
"Release"
],
"properties": {
"CollectionId": {
"type": "integer",
"description": "Collection ID.",
"example": 17
},
"Name": {
"type": "string",
"description": "SubCollection name.",
"example": "group 1"
},
"Type": {
"type": "string",
"description": "Either `“Exclusive”` (all the products contained in it will not be used) or `“Inclusive”` (all the products contained in it will be used).",
"example": "Inclusive"
},
"PreSale": {
"type": "boolean",
"description": "Defines PreSale date.",
"example": false
},
"Release": {
"type": "boolean",
"description": "Defines Release date.",
"example": false
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 17,
"CollectionId": 151,
"Name": "group 1",
"Type": "Inclusive",
"PreSale": false,
"Release": false
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Subcollection ID."
},
"CollectionId": {
"type": "integer",
"description": "Collection ID."
},
"Name": {
"type": "string",
"description": "Subcollection name."
},
"Type": {
"type": "string",
"description": "Either `“Exclusive”` (all the products contained in it will not be used) or `“Inclusive”` (all the products contained in it will be used)."
},
"PreSale": {
"type": "boolean",
"description": "Defines if the collection is on PreSale."
},
"Release": {
"type": "boolean",
"description": "Defines if the collection is a new released one."
}
}
}
}
}
}
}
},
"delete": {
"tags": [
"Legacy subcollection"
],
"summary": "Delete subcollection",
"description": " >⚠️ There are two ways to configure collections, through Legacy CMS Portal or using the Beta Collection module. This endpoint is compatible with [collections configured through the Legacy CMS Portal](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L).\n\nDeletes a previously created subcollection, which is a [Group](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L#group-types) within a collection.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Collection | **Write Collections** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "subCollectionId",
"in": "path",
"required": true,
"description": "Subcollection's unique numerical identifier, which can be obtained by placing a request to [Get subcollection by collection ID](https://developers.vtex.com/vtex-rest-api/reference/catalog-api-get-subcollection-collectionid).",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/subcollection": {
"post": {
"tags": [
"Legacy subcollection"
],
"summary": "Create subcollection",
"description": " >⚠️ There are two ways to configure collections, through Legacy CMS Portal or using the Beta Collection module. This endpoint is compatible with [collections configured through the Legacy CMS Portal](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L).\n\nCreates a new subcollection, which is a [Group](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L#group-types) within a collection. A subcollection can be either “Exclusive” (all the products contained in it will not be used) or “Inclusive” (all the products contained in it will be used).\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Collection | **Write Collections** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"CollectionId",
"Name",
"Type",
"PreSale",
"Release"
],
"properties": {
"CollectionId": {
"type": "integer",
"description": "Subcollection ID.",
"example": 17
},
"Name": {
"type": "string",
"description": "Subcollection name.",
"example": "group 1"
},
"Type": {
"type": "string",
"description": "Either `“Exclusive”` (all the products contained in it will not be used) or `“Inclusive”` (all the products contained in it will be used).",
"example": "Inclusive"
},
"PreSale": {
"type": "boolean",
"description": "Defines PreSale date.",
"example": false
},
"Release": {
"type": "boolean",
"description": "Defines Release date.",
"example": false
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 17,
"CollectionId": 151,
"Name": "group 1",
"Type": "Inclusive",
"PreSale": false,
"Release": false
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Subcollection ID."
},
"CollectionId": {
"type": "integer",
"description": "Collection ID."
},
"Name": {
"type": "string",
"description": "Subcollection name."
},
"Type": {
"type": "string",
"description": "Either `“Exclusive”` (all the products contained in it will not be used) or `“Inclusive”` (all the products contained in it will be used)."
},
"PreSale": {
"type": "boolean",
"description": "Defines if the collection is on PreSale."
},
"Release": {
"type": "boolean",
"description": "Defines if the collection is a new released one."
}
}
}
}
}
}
}
}
},
"/api/catalog/pvt/collection/{collectionId}/position": {
"post": {
"tags": [
"Legacy subcollection"
],
"summary": "Reposition SKU on the subcollection",
"description": " >⚠️ There are two ways to configure collections, through Legacy CMS Portal or using the Beta Collection module. This endpoint is compatible with [collections configured through the Legacy CMS Portal](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L).\n\nEdits the position of an SKU that already exists in the subcollection, which is a [Group](https://help.vtex.com/en/tutorial/adding-collections-cms--2YBy6P6X0NFRpkD2ZBxF6L#group-types) within a collection.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Collection | **Write Collections** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "collectionId",
"in": "path",
"required": true,
"description": "Collection's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 151
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"skuId",
"position",
"subCollectionId"
],
"properties": {
"skuId": {
"type": "integer",
"description": "SKU ID.",
"example": 1
},
"position": {
"type": "integer",
"description": "SKU position.",
"example": 1
},
"subCollectionId": {
"type": "integer",
"description": "Subcollection ID.",
"example": 17
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/specification/{specificationId}": {
"get": {
"tags": [
"Specification"
],
"summary": "Get specification by specification ID",
"description": "Retrieves information of a product or SKU specification.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "specificationId",
"in": "path",
"required": true,
"description": "Specification's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 32,
"FieldTypeId": 6,
"CategoryId": 10,
"FieldGroupId": 11,
"Name": "Peso",
"Description": "Peso",
"Position": 1,
"IsFilter": false,
"IsRequired": true,
"IsOnProductDetails": false,
"IsStockKeepingUnit": true,
"IsWizard": false,
"IsActive": true,
"IsTopMenuLinkActive": false,
"IsSideMenuLinkActive": false,
"DefaultValue": null
},
"schema": {
"type": "object",
"required": [
"Id",
"FieldTypeId",
"CategoryId",
"FieldGroupId",
"Name",
"Description",
"Position",
"IsFilter",
"IsRequired",
"IsOnProductDetails",
"IsStockKeepingUnit",
"IsWizard",
"IsActive",
"IsTopMenuLinkActive",
"IsSideMenuLinkActive",
"DefaultValue"
],
"properties": {
"Id": {
"type": "integer",
"description": "Created specification's ID."
},
"FieldTypeId": {
"type": "integer",
"description": "Field type can be `1 - Text`, `2 - Multi-Line Text`, `4 - Number`, `5 - Combo`, `6 - Radio`, `7 - Checkbox`, `8 - Indexed Text`, `9 - Indexed Multi-Line Text`.",
"enum": [
1,
2,
4,
5,
6,
7,
8,
9
]
},
"CategoryId": {
"type": "integer",
"description": "Specification category ID."
},
"FieldGroupId": {
"type": "integer",
"description": "Numerical ID of the specification group that contains the new specification."
},
"Name": {
"type": "string",
"description": "Specification name. Limited to 100 characters."
},
"Description": {
"type": "string",
"description": "Specification description."
},
"Position": {
"type": "integer",
"description": "The current specification's position in comparison to the other specifications."
},
"IsFilter": {
"type": "boolean",
"description": "Defines if the specification can be used as a filter."
},
"IsRequired": {
"type": "boolean",
"description": "Defines if the specification is required or not."
},
"IsOnProductDetails": {
"type": "boolean",
"description": "Defines if the specification will be shown on the product screen in the specification area."
},
"IsStockKeepingUnit": {
"type": "boolean",
"description": "Defines if the specification is applied to a specific SKU."
},
"IsWizard": {
"type": "boolean",
"description": "Deprecated field.",
"deprecated": true
},
"IsActive": {
"type": "boolean",
"description": "Defines if the specification is active or not."
},
"IsTopMenuLinkActive": {
"type": "boolean",
"description": "Defines if the specification is shown in the main menu of the site."
},
"IsSideMenuLinkActive": {
"type": "boolean",
"description": "Defines if the specification is shown in the side menu."
},
"DefaultValue": {
"type": "string",
"description": "Specification default value.",
"nullable": true
}
}
}
}
}
}
}
},
"put": {
"tags": [
"Specification"
],
"summary": "Update specification",
"description": "Updates a product specification or SKU specification.\r\n\r\n>⚠️ It is not possible to edit `FieldTypeId`, `CategoryId`, `FieldGroupId` or `IsStockKeepingUnit` in this API call.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "specificationId",
"in": "path",
"required": true,
"description": "Specification's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 88
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"FieldTypeId",
"CategoryId",
"FieldGroupId",
"Name",
"Description",
"Position",
"IsFilter",
"IsRequired",
"IsOnProductDetails",
"IsStockKeepingUnit",
"IsWizard",
"IsActive",
"IsTopMenuLinkActive",
"IsSideMenuLinkActive",
"DefaultValue"
],
"properties": {
"FieldTypeId": {
"type": "integer",
"description": "Field type can be `1 - Text`, `2 - Multi-Line Text`, `4 - Number`, `5 - Combo`, `6 - Radio`, `7 - Checkbox`, `8 - Indexed Text`, `9 - Indexed Multi-Line Text`. This information is not editable.",
"example": 1,
"enum": [
1,
2,
4,
5,
6,
7,
8,
9
]
},
"CategoryId": {
"type": "integer",
"description": "Specification category ID. This information is not editable.",
"example": 0
},
"FieldGroupId": {
"type": "integer",
"description": "Numerical ID of the specification group that contains the new specification. This information is not editable.",
"example": 0
},
"Name": {
"type": "string",
"description": "Specification name. Limited to 100 characters.",
"example": "Material"
},
"Description": {
"type": "string",
"description": "Specification description.",
"example": "Composition of the product."
},
"Position": {
"type": "integer",
"description": "The current specification's position in comparison to the other specifications.",
"example": 1
},
"IsFilter": {
"type": "boolean",
"description": "Defines if the specification can be used as a filter.",
"example": false
},
"IsRequired": {
"type": "boolean",
"description": "Defines if the specification is required or not.",
"example": false
},
"IsOnProductDetails": {
"type": "boolean",
"description": "Defines if the specification will be shown on the product screen in the specification area.",
"example": false
},
"IsStockKeepingUnit": {
"type": "boolean",
"description": "Defines if the specification is applied to a specific SKU. This information is not editable.",
"example": false
},
"IsWizard": {
"type": "boolean",
"description": "Deprecated field.",
"example": false,
"deprecated": true
},
"IsActive": {
"type": "boolean",
"description": "Defines if the specification is active or not.",
"example": false
},
"IsTopMenuLinkActive": {
"type": "boolean",
"description": "Defines if the specification is shown in the main menu of the site.",
"example": false
},
"IsSideMenuLinkActive": {
"type": "boolean",
"description": "Defines if the specification is shown in the side menu.",
"example": false
},
"DefaultValue": {
"type": "string",
"description": "Specification default value.",
"example": "Leather"
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 88,
"FieldTypeId": 1,
"CategoryId": 4,
"FieldGroupId": 20,
"Name": "Material",
"Description": "Composition of the product.",
"Position": 1,
"IsFilter": true,
"IsRequired": true,
"IsOnProductDetails": false,
"IsStockKeepingUnit": false,
"IsWizard": false,
"IsActive": true,
"IsTopMenuLinkActive": false,
"IsSideMenuLinkActive": true,
"DefaultValue": "Leather"
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Specification ID."
},
"FieldTypeId": {
"type": "integer",
"description": "Field type ID can be `1 - Text`, `2 - Multi-Line Text`, `4 - Number`, `5 - Combo`, `6 - Radio`, `7 - Checkbox`, `8 - Indexed Text`, `9 - Indexed Multi-Line Text`."
},
"CategoryId": {
"type": "integer",
"description": "Category ID associated with this specification."
},
"FieldGroupId": {
"type": "integer",
"description": "ID of the group of specifications that contains the new specification."
},
"Name": {
"type": "string",
"description": "Specification name. Limited to 100 characters."
},
"Description": {
"type": "string",
"deprecated": true,
"nullable": true
},
"Position": {
"type": "integer",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - This position number is used in ordering the specifications both in the navigation menu and in the specification listing on the product page."
},
"IsFilter": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To allow the specification to be used as a facet (filter) on the search navigation bar."
},
"IsRequired": {
"type": "boolean",
"description": "Makes the specification mandatory (`true`) or optional (`false`)."
},
"IsOnProductDetails": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal -If specification is visible on the product page."
},
"IsStockKeepingUnit": {
"type": "boolean",
"description": "If `true`, it will be added as a SKU specification. If `false`, it will be added as a product specification field."
},
"IsWizard": {
"type": "boolean",
"deprecated": true,
"description": "Deprecated field.",
"nullable": true
},
"IsActive": {
"type": "boolean",
"description": "Enable (`true`) or disable (`false`) specification."
},
"IsTopMenuLinkActive": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To make the specification visible in the store's upper menu."
},
"IsSideMenuLinkActive": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To make the specification field clickable in the search navigation bar."
},
"DefaultValue": {
"type": "string",
"description": "Specification default value."
}
}
}
}
}
}
}
}
},
"/api/catalog/pvt/specification": {
"post": {
"tags": [
"Specification"
],
"summary": "Create specification",
"description": "Creates a new product or SKU specification.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"FieldTypeId",
"FieldGroupId",
"Name"
],
"properties": {
"FieldTypeId": {
"type": "integer",
"description": "Field type ID can be `1 - Text`, `2 - Multi-Line Text`, `4 - Number`, `5 - Combo`, `6 - Radio`, `7 - Checkbox`, `8 - Indexed Text`, `9 - Indexed Multi-Line Text`.",
"example": 1,
"enum": [
1,
2,
4,
5,
6,
7,
8,
9
]
},
"CategoryId": {
"type": "integer",
"description": "Category ID associated with this specification.",
"example": 1
},
"FieldGroupId": {
"type": "integer",
"description": "ID of the group of specifications that contains the new specification.",
"example": 22
},
"Name": {
"type": "string",
"description": "Specification name. Limited to 100 characters.",
"example": "Material"
},
"Description": {
"type": "string",
"deprecated": true,
"nullable": true,
"example": "Composition of the product."
},
"Position": {
"type": "integer",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - This position number is used in ordering the specifications both in the navigation menu and in the specification listing on the product page.",
"example": 1
},
"IsFilter": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To allow the specification to be used as a facet (filter) on the search navigation bar.",
"example": false
},
"IsRequired": {
"type": "boolean",
"description": "Makes the specification mandatory (`true`) or optional (`false`).",
"example": false
},
"IsOnProductDetails": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal -If specification is visible on the product page.",
"example": true
},
"IsStockKeepingUnit": {
"type": "boolean",
"description": "If `true`, it will be added as a SKU specification. If `false`, it will be added as a product specification field.",
"example": false
},
"IsWizard": {
"type": "boolean",
"deprecated": true,
"description": "Deprecated field.",
"example": null,
"nullable": true
},
"IsActive": {
"type": "boolean",
"description": "Enable (`true`) or disable (`false`) specification.",
"example": true
},
"IsTopMenuLinkActive": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To make the specification visible in the store's upper menu.",
"example": false
},
"IsSideMenuLinkActive": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To make the specification field clickable in the search navigation bar.",
"example": false
},
"DefaultValue": {
"type": "string",
"description": "Specification default value.",
"example": "Cotton"
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Id": 88,
"FieldTypeId": 1,
"CategoryId": 4,
"FieldGroupId": 20,
"Name": "Material",
"Description": "Composition of the product.",
"Position": 1,
"IsFilter": true,
"IsRequired": true,
"IsOnProductDetails": false,
"IsStockKeepingUnit": false,
"IsWizard": false,
"IsActive": true,
"IsTopMenuLinkActive": false,
"IsSideMenuLinkActive": true,
"DefaultValue": "Cotton"
},
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Specification ID."
},
"FieldTypeId": {
"type": "integer",
"description": "Field type ID can be `1 - Text`, `2 - Multi-Line Text`, `4 - Number`, `5 - Combo`, `6 - Radio`, `7 - Checkbox`, `8 - Indexed Text`, `9 - Indexed Multi-Line Text`."
},
"CategoryId": {
"type": "integer",
"description": "Category ID associated with this specification."
},
"FieldGroupId": {
"type": "integer",
"description": "ID of the group of specifications that contains the new specification."
},
"Name": {
"type": "string",
"description": "Specification name. Limited to 100 characters."
},
"Description": {
"type": "string",
"deprecated": true,
"nullable": true
},
"Position": {
"type": "integer",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - This position number is used in ordering the specifications both in the navigation menu and in the specification listing on the product page."
},
"IsFilter": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To allow the specification to be used as a facet (filter) on the search navigation bar."
},
"IsRequired": {
"type": "boolean",
"description": "Makes the specification mandatory (`true`) or optional (`false`)."
},
"IsOnProductDetails": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal -If specification is visible on the product page."
},
"IsStockKeepingUnit": {
"type": "boolean",
"description": "If `true`, it will be added as a SKU specification. If `false`, it will be added as a product specification field."
},
"IsWizard": {
"type": "boolean",
"deprecated": true,
"nullable": true
},
"IsActive": {
"type": "boolean",
"description": "Enable (`true`) or disable (`false`) specification."
},
"IsTopMenuLinkActive": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To make the specification visible in the store's upper menu."
},
"IsSideMenuLinkActive": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To make the specification field clickable in the search navigation bar."
},
"DefaultValue": {
"type": "string",
"description": "Specification default value."
}
}
}
}
}
}
}
}
},
"/api/catalog_system/pub/specification/fieldGet/{fieldId}": {
"get": {
"tags": [
"Specification field"
],
"summary": "Get specification field",
"description": "Retrieves details from a specification field by this field's ID. \r\n>⚠️ This is a legacy endpoint. We recommend using [Get specification](https://developers.vtex.com/vtex-rest-api/reference/get_api-catalog-pvt-specification-specificationid) instead.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SpecificationsField",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "fieldId",
"in": "path",
"description": "Specification field ID.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 88
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"Name": "Material",
"CategoryId": 4,
"FieldId": 88,
"IsActive": true,
"IsRequired": true,
"FieldTypeId": 1,
"FieldTypeName": "Texto",
"FieldValueId": null,
"Description": "Composition of the product.",
"IsStockKeepingUnit": false,
"IsFilter": true,
"IsOnProductDetails": false,
"Position": 1,
"IsWizard": false,
"IsTopMenuLinkActive": false,
"IsSideMenuLinkActive": true,
"DefaultValue": null,
"FieldGroupId": 20,
"FieldGroupName": "Clothes specifications"
},
"schema": {
"type": "object",
"properties": {
"Name": {
"type": "string",
"description": "Specification field name."
},
"FieldId": {
"type": "integer",
"description": "Specification field ID."
},
"IsActive": {
"type": "boolean",
"description": "Enable (`true`) or disable (`false`) specification."
},
"IsRequired": {
"type": "boolean",
"description": "Makes the specification mandatory (`true`) or optional (`false`)."
},
"FieldTypeId": {
"type": "integer",
"description": "Field type ID can be `1 - Text`, `2 - Multi-Line Text`, `4 - Number`, `5 - Combo`, `6 - Radio`, `7 - Checkbox`, `8 - Indexed Text`, `9 - Indexed Multi-Line Text`."
},
"FieldTypeName": {
"type": "string",
"description": "Field type name, which can be `Text`, `Multi-Line Text`, `Number`, `Combo`, `Radio`, `Checkbox`, `Indexed Text` or `Indexed Multi-Line Text`."
},
"FieldValueId": {
"type": "integer",
"description": "Specification value ID.",
"nullable": true
},
"Description": {
"type": "string",
"deprecated": true,
"nullable": true
},
"IsStockKeepingUnit": {
"type": "boolean",
"description": "If `true`, it will be added as a SKU specification. If `false`, it will be added as a product specification field."
},
"IsFilter": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To allow the specification to be used as a facet (filter) on the search navigation bar."
},
"IsOnProductDetails": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal -If specification is visible on the product page."
},
"Position": {
"type": "integer",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - This position number is used in ordering the specifications both in the navigation menu and in the specification listing on the product page."
},
"IsWizard": {
"type": "boolean",
"deprecated": true,
"description": "Deprecated field.",
"nullable": true
},
"IsTopMenuLinkActive": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To make the specification visible in the store's upper menu."
},
"IsSideMenuLinkActive": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To make the specification field clickable in the search navigation bar."
},
"DefaultValue": {
"type": "string",
"description": "Specification default value.",
"nullable": true
},
"FieldGroupId": {
"type": "integer",
"description": "ID of the group of specifications that contains the new specification."
},
"FieldGroupName": {
"type": "string",
"description": "Specification field group name."
}
}
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pvt/specification/field": {
"post": {
"tags": [
"Specification field"
],
"summary": "Create specification field",
"description": "Creates a specification field in a category. \r\n>⚠️ This is a legacy endpoint. We recommend using [Create specification](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/specification?endpoint=post-/api/catalog/pvt/specification) instead.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SpecificationsInsertField",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SpecificationsInsertFieldRequest"
},
"example": {
"Name": "Material",
"CategoryId": 4,
"FieldId": 88,
"IsActive": true,
"IsRequired": true,
"FieldTypeId": 1,
"FieldValueId": 1,
"IsStockKeepingUnit": false,
"Description": "Composition of the product.",
"IsFilter": true,
"IsOnProductDetails": false,
"Position": 1,
"IsWizard": false,
"IsTopMenuLinkActive": true,
"IsSideMenuLinkActive": true,
"DefaultValue": null,
"FieldGroupId": 20,
"FieldGroupName": "Clothes specifications"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": 89,
"schema": {
"type": "integer",
"description": "Specification field ID."
}
}
}
}
},
"deprecated": false
},
"put": {
"tags": [
"Specification field"
],
"summary": "Update specification field",
"description": "Updates a specification field in a category. \r\n>⚠️ This is a legacy endpoint. We recommend using [Update specification](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/stockkeepingunit/-skuId-/specification?endpoint=put-/api/catalog/pvt/stockkeepingunit/-skuId-/specification) instead.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SpecificationsInsertFieldUpdate",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SpecificationsInsertFieldUpdateRequest"
},
"example": {
"FieldId": 89,
"Name": "Material",
"CategoryId": 4,
"IsActive": true,
"IsRequired": true,
"FieldTypeId": 1,
"Description": "Composition of the product.",
"IsStockKeepingUnit": false,
"IsFilter": true,
"IsOnProductDetails": true,
"Position": 1,
"IsWizard": false,
"IsTopMenuLinkActive": false,
"IsSideMenuLinkActive": false,
"DefaultValue": "Cotton",
"FieldGroupId": 20,
"FieldGroupName": "Clothes specifications"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": 89,
"schema": {
"type": "integer",
"description": "Specification field ID."
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pvt/specification/fieldValue/{fieldValueId}": {
"get": {
"tags": [
"Specification field value"
],
"summary": "Get specification field value",
"description": "Retrieves details from a specification field's value by this value's ID. \r\n>⚠️ This is a legacy endpoint. We recommend using [Get specification value](https://developers.vtex.com/docs/api-reference/catalog-api#get-/api/catalog/pvt/specificationvalue/-specificationValueId-?endpoint=get-/api/catalog/pvt/specificationvalue/-specificationValueId-) instead.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SpecificationsGetFieldValue",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "fieldValueId",
"in": "path",
"description": "Specification value ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "143"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"FieldValueId": 143,
"FieldId": 34,
"Name": "Cotton",
"Text": "Cotton fibers",
"IsActive": true,
"Position": 100
},
"schema": {
"type": "object",
"properties": {
"FieldValueId": {
"type": "integer",
"format": "int32",
"description": "Specification field value ID."
},
"FieldId": {
"type": "integer",
"description": "Specification field ID."
},
"Name": {
"type": "string",
"description": "Specification field value name."
},
"Text": {
"type": "string",
"description": "Specification field value Description."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the specification field Value is active (`true`) or inactive (`false`)."
},
"Position": {
"type": "integer",
"format": "int32",
"description": "Specification field value position."
}
}
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pub/specification/fieldvalue/{fieldId}": {
"get": {
"tags": [
"Specification field value"
],
"summary": "Get specification values by specification field ID",
"description": "Gets a list of all specification values from a specification field by this field's ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SpecificationsValuesByFieldId",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "fieldId",
"in": "path",
"description": "Specification field ID.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"example": 34
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/GetSpecFieldValue"
}
},
"example": [
{
"FieldValueId": 52,
"Value": "0 a 6 meses",
"IsActive": true,
"Position": 1
},
{
"FieldValueId": 53,
"Value": "1 a 2 anos",
"IsActive": true,
"Position": 4
},
{
"FieldValueId": 54,
"Value": "3 a 4 anos",
"IsActive": true,
"Position": 3
},
{
"FieldValueId": 55,
"Value": "5 a 6 anos",
"IsActive": true,
"Position": 2
},
{
"FieldValueId": 56,
"Value": "7 a 8 anos",
"IsActive": true,
"Position": 5
},
{
"FieldValueId": 57,
"Value": "9 a 10 anos",
"IsActive": true,
"Position": 6
},
{
"FieldValueId": 58,
"Value": "Acima de 10 anos",
"IsActive": true,
"Position": 7
}
]
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pvt/specification/fieldValue": {
"post": {
"tags": [
"Specification field value"
],
"summary": "Create specification field value",
"description": "Creates a specification field value by the specification field's ID. \r\n>⚠️ This is a legacy endpoint. We recommend using [Create specification value](https://developers.vtex.com/docs/api-reference/catalog-api#post-/api/catalog/pvt/specificationvalue) instead.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SpecificationsInsertFieldValue",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SpecificationsInsertFieldValueRequest"
},
"example": {
"FieldId": 34,
"Name": "Cotton",
"Text": "Cotton fibers",
"IsActive": true,
"Position": 100
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"FieldValueId": 143,
"FieldId": 34,
"Name": "Cotton",
"Text": "Cotton fibers",
"IsActive": true,
"Position": 100
},
"schema": {
"type": "object",
"properties": {
"FieldValueId": {
"type": "integer",
"format": "int32",
"description": "Specification field value ID."
},
"FieldId": {
"type": "integer",
"description": "Specification field ID."
},
"Name": {
"type": "string",
"description": "Specification field value name."
},
"Text": {
"type": "string",
"description": "Specification field value description."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the specification field value is active (`true`) or inactive (`false`)."
},
"Position": {
"type": "integer",
"format": "int32",
"description": "Specification field value position."
}
}
}
}
}
}
},
"deprecated": false
},
"put": {
"tags": [
"Specification field value"
],
"summary": "Update specification field value",
"description": "Updates a specification field value by the specification field's ID. \r\n>⚠️ This is a legacy endpoint. We recommend using [Update specification field value](https://developers.vtex.com/docs/api-reference/catalog-api#put-/api/catalog/pvt/stockkeepingunit/-skuId-/specification?endpoint=put-/api/catalog/pvt/stockkeepingunit/-skuId-/specification-value-id) instead.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SpecificationsUpdateFieldValue",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SpecificationsUpdateFieldValueRequest"
},
"example": {
"FieldId": 1,
"FieldValueId": 143,
"Name": "Cotton",
"Text": "Cotton fibers",
"IsActive": true,
"Position": 100
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": "Field Value Updated",
"schema": {
"type": "string",
"description": "Status of the request."
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog/pvt/specificationvalue/{specificationValueId}": {
"get": {
"tags": [
"Specification value"
],
"summary": "Get specification value",
"description": "Retrieves general information about a specification value.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "specificationValueId",
"in": "path",
"required": true,
"description": "Specification value's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 143
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"FieldValueId": 143,
"FieldId": 34,
"Name": "Cotton",
"Text": "Cotton fibers",
"IsActive": true,
"Position": 100
},
"schema": {
"type": "object",
"properties": {
"FieldValueId": {
"type": "integer",
"format": "int32",
"description": "Specification field value ID."
},
"FieldId": {
"type": "integer",
"description": "Specification field ID."
},
"Name": {
"type": "string",
"description": "Specification field value name."
},
"Text": {
"type": "string",
"description": "Specification field value description."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the specification field value is active (`true`) or inactive (`false`)."
},
"Position": {
"type": "integer",
"format": "int32",
"description": "Specification field value position."
}
}
}
}
}
}
}
},
"put": {
"tags": [
"Specification value"
],
"summary": "Update specification value",
"description": "Updates a new specification value for a category.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "specificationValueId",
"in": "path",
"required": true,
"description": " specification value's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"FieldId",
"Name"
],
"properties": {
"FieldId": {
"type": "integer",
"description": "Specification ID associated with this specification value.",
"example": 193
},
"Name": {
"type": "string",
"description": "Specification value name.",
"example": "Metal"
},
"Text": {
"type": "string",
"deprecated": true,
"nullable": true,
"description": "Specification value text."
},
"IsActive": {
"type": "boolean",
"description": "Enable (`true`) or disable (`false`) specification value.",
"example": true
},
"Position": {
"type": "integer",
"description": "The position of the value to be shown on product registration page (`/admin/Site/Produto.aspx`).",
"example": 1
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"FieldValueId": 360,
"FieldId": 193,
"Name": "Metal",
"Text": null,
"IsActive": true,
"Position": 1
},
"schema": {
"type": "object",
"properties": {
"FieldValueId": {
"type": "integer",
"description": "Specification value ID."
},
"FieldId": {
"type": "integer",
"description": "Specification field ID associated with this specification value."
},
"Name": {
"type": "string",
"description": "Specification value name."
},
"Text": {
"type": "string",
"deprecated": true,
"nullable": true,
"description": "Specification value text."
},
"IsActive": {
"type": "boolean",
"description": "Enable (`true`) or disable (`false`) specification value."
},
"Position": {
"type": "integer",
"description": "The position of the value to be shown on product registration page (`/admin/Site/Produto.aspx`)."
}
}
}
}
}
}
}
}
},
"/api/catalog/pvt/specificationvalue": {
"post": {
"tags": [
"Specification value"
],
"summary": "Create specification value",
"description": "Creates a new specification value for a category.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"FieldId",
"Name"
],
"properties": {
"FieldId": {
"type": "integer",
"description": "Specification field ID associated with this specification value.",
"example": 193
},
"Name": {
"type": "string",
"description": "Specification value name.",
"example": "Metal"
},
"Text": {
"type": "string",
"deprecated": true,
"nullable": true,
"description": "Specification value text."
},
"IsActive": {
"type": "boolean",
"description": "Enable (`true`) or disable (`false`) specification value.",
"example": true
},
"Position": {
"type": "integer",
"description": "The position of the value to be shown on product registration page (`/admin/Site/Produto.aspx`).",
"example": 1
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": {
"FieldValueId": 360,
"FieldId": 193,
"Name": "Metal",
"Text": null,
"IsActive": true,
"Position": 1
},
"schema": {
"type": "object",
"properties": {
"FieldValueId": {
"type": "integer",
"description": "Specification value ID."
},
"FieldId": {
"type": "integer",
"description": "Specification field ID associated with this specification value."
},
"Name": {
"type": "string",
"description": "Specification value name."
},
"Text": {
"type": "string",
"deprecated": true,
"nullable": true,
"description": "Specification value text."
},
"IsActive": {
"type": "boolean",
"description": "Enable (`true`) or disable (`false`) specification value."
},
"Position": {
"type": "integer",
"description": "The position of the value to be shown on product registration page (`/admin/Site/Produto.aspx`)."
}
}
}
}
}
}
}
}
},
"/api/catalog_system/pvt/specification/groupbycategory/{categoryId}": {
"get": {
"tags": [
"Specification group"
],
"summary": "List specification group by category",
"description": "Retrieves a list of specification groups by the category ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Groups** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SpecificationsGroupListbyCategory",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "categoryId",
"in": "path",
"description": "Category ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "1"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SpecificationsGroup"
}
},
"example": [
{
"CategoryId": 1,
"Id": 5,
"Name": "Materials",
"Position": 2
},
{
"CategoryId": 1,
"Id": 6,
"Name": "Sizes",
"Position": 3
}
]
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pub/specification/groupGet/{groupId}": {
"get": {
"tags": [
"Specification group"
],
"summary": "Get specification group",
"description": "Retrieves details from a specification group by the ID of the group.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Groups** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SpecificationsGroupGet",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "groupId",
"in": "path",
"description": "Specification group ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "6"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SpecificationsGroup"
},
"example": {
"CategoryId": 1,
"Id": 6,
"Name": "Sizes",
"Position": 3
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog/pvt/specificationgroup": {
"post": {
"tags": [
"Specification group"
],
"summary": "Create specification group",
"description": "Create a specification group. \r\n>⚠️ It is also possible to create a specification Group by using an alternative legacy route: `/api/catalog_system/pvt/specification/group`.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Groups** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"operationId": "SpecificationGroupInsert2",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SpecificationGroupInsertRequest"
},
"example": {
"CategoryId": 1,
"Name": "Sizes"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"format": "int32",
"description": "Specification group ID."
},
"CategoryId": {
"type": "integer",
"format": "int32",
"description": "Category ID."
},
"Name": {
"type": "string",
"description": "Specification group name."
},
"Position": {
"type": "integer",
"format": "int32",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - specification Group Position."
}
}
},
"example": {
"Id": 10,
"CategoryId": 1,
"Name": "Sizes",
"Position": 3
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog/pvt/specificationgroup/{groupId}": {
"put": {
"tags": [
"Specification group"
],
"summary": "Update specification group",
"description": "Update a specification group. \r\n>⚠️ It is also possible to update a specification Group by using an alternative legacy route: `/api/catalog_system/pvt/specification/group`.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Content | **Groups** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "groupId",
"in": "path",
"required": true,
"description": "Group's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"CategoryId",
"Name",
"Id",
"Position"
],
"properties": {
"CategoryId": {
"type": "integer",
"description": "Category ID where the specification group is contained.",
"example": 1
},
"Id": {
"type": "integer",
"format": "int32",
"description": "Specification group ID.",
"example": 24
},
"Name": {
"type": "string",
"description": "Specification group name.",
"example": "Sizes"
},
"Position": {
"type": "integer",
"description": "Specification group position.",
"example": 1
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"CategoryId": {
"type": "integer",
"description": "Category ID where the specification Group is contained.",
"example": 1
},
"Id": {
"type": "integer",
"format": "int32",
"description": "Specification group ID.",
"example": 24
},
"Name": {
"type": "string",
"description": "Specification group Name.",
"example": "Sizes"
},
"Position": {
"type": "integer",
"description": "Specification group Position.",
"example": 1
}
}
}
}
}
}
}
}
},
"/api/catalog/pvt/specification/nonstructured/{Id}": {
"get": {
"tags": [
"Non-structured specification"
],
"summary": "Get non-structured specification by ID",
"description": "Retrieves general information about unmapped specifications of a seller's SKU in a Marketplace.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "Id",
"in": "path",
"required": true,
"description": "Non-structured specification's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1010
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Non-structured specification's unique numerical identifier."
},
"SkuId": {
"type": "integer",
"description": "SKU's unique numerical identifier."
},
"SpecificationName": {
"type": "string",
"description": "Name of the non-structured specification."
},
"SpecificationValue": {
"type": "string",
"description": "Value of the non-structured specification."
}
}
}
},
"example":[
{
"Id": 1010,
"SkuId": 310119072,
"SpecificationName": "size",
"SpecificationValue": "Small"
}
]
}
}
}
}
},
"delete": {
"tags": [
"Non-structured specification"
],
"summary": "Delete non-structured specification",
"description": "Deletes unmapped specifications of a seller'S SKU in a marketplace by its unique ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "Id",
"in": "path",
"required": true,
"description": "Non-structured specification's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/specification/nonstructured": {
"get": {
"tags": [
"Non-structured specification"
],
"summary": "Get non-structured specification by SKU ID",
"description": "Gets general information about unmapped specifications of a seller's SKU in a marketplace by SKU ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "query",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Non-structured specification's unique numerical identifier."
},
"SkuId": {
"type": "integer",
"description": "SKU's unique numerical identifier."
},
"SpecificationName": {
"type": "string",
"description": "Name of the non-structured specification."
},
"SpecificationValue": {
"type": "string",
"description": "Value of the non-structured specification."
}
}
}
},
"example":[
{
"Id": 1010,
"SkuId": 310119072,
"SpecificationName": "size",
"SpecificationValue": "Small"
}
]
}
}
}
}
},
"delete": {
"tags": [
"Non-structured specification"
],
"summary": "Delete non-structured specification by SKU ID",
"description": "Deletes unmapped specifications of a seller'S SKU in a marketplace by SKU ID.\r\n\r\n## Permissions\r\n\r\nAny user or [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:\r\n\r\n| **Product** | **Category** | **Resource** |\r\n| --------------- | ----------------- | ----------------- |\r\n| Catalog | Commercial | **SKU management** |\r\n\r\nThere are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).\r\n\r\n>\u2757 To prevent integrations from having excessive permissions, consider the [best practices for managing app keys](https://help.vtex.com/en/tutorial/best-practices-application-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "skuId",
"in": "query",
"required": true,
"description": "SKU's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog_system/pvt/saleschannel/list": {
"get": {
"tags": [
"Sales channel"
],
"summary": "Get Sales channel list",
"description": "Retrieves a list with details about the store's sales channels. \r\n## Response body example\r\n\r\n```json\r\n[\r\n {\r\n \"Id\": 1,\r\n \"Name\": \"Loja Principal\",\r\n \"IsActive\": true,\r\n \"ProductClusterId\": null,\r\n \"CountryCode\": \"BRA\",\r\n \"CultureInfo\": \"pt-BR\",\r\n \"TimeZone\": \"E. South America Standard Time\",\r\n \"CurrencyCode\": \"BRL\",\r\n \"CurrencySymbol\": \"R$\",\r\n \"CurrencyLocale\": 1046,\r\n \"CurrencyFormatInfo\": {\r\n \"CurrencyDecimalDigits\": 1,\r\n \"CurrencyDecimalSeparator\": \",\",\r\n \"CurrencyGroupSeparator\": \".\",\r\n \"CurrencyGroupSize\": 3,\r\n \"StartsWithCurrencySymbol\": true\r\n },\r\n \"Origin\": null,\r\n \"Position\": 2,\r\n \"ConditionRule\": null,\r\n \"CurrencyDecimalDigits\": 1\r\n }\r\n]\r\n```",
"operationId": "SalesChannelList",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Sales channel unique identifier.",
"example": 1
},
"Name": {
"type": "string",
"description": "Sales channel name.",
"example": "Loja Principal"
},
"IsActive": {
"type": "boolean",
"description": "Defines if the Sales channel is active (`true`) or not (`false`)."
},
"ProductClusterId": {
"type": "integer",
"description": "Product Cluster ID, if the Sales channel has releated product Cluster.",
"nullable": true,
"example": null
},
"CountryCode": {
"type": "string",
"description": "Country Code in ISO 3166-1 alfa-3 Standard.",
"example": "BRA"
},
"CultureInfo": {
"type": "string",
"description": "Language Country code in LCIDstring Standard.",
"example": "pt-BR"
},
"TimeZone": {
"type": "string",
"description": "Name of Time Zone.",
"example": "E. South America Standard Time"
},
"CurrencyCode": {
"type": "string",
"description": "Currency Code in ISO 4217 standard.",
"example": "BRL"
},
"CurrencySymbol": {
"type": "string",
"description": "Currency symbol.",
"example": "R$"
},
"CurrencyLocale": {
"type": "integer",
"description": "Currency Locale Code in LCID standard.",
"example": 1046
},
"CurrencyFormatInfo": {
"type": "object",
"description": "Object with currency format.",
"properties": {
"CurrencyDecimalDigits": {
"type": "integer",
"description": "Quantity of Currency Decimal Digits.",
"example": 1
},
"CurrencyDecimalSeparator": {
"type": "string",
"description": "Defines which Currency Decimal Separator will be applied.",
"example": ","
},
"CurrencyGroupSeparator": {
"type": "string",
"description": "Defines which Currency Group Separator will be applied.",
"example": "."
},
"CurrencyGroupSize": {
"type": "integer",
"description": "Define how many characters will be grouped.",
"example": 3
},
"StartsWithCurrencySymbol": {
"type": "boolean",
"description": "Defines if all prices will be initiated with Currency Symbol (`true`) or not (`false`).",
"example": true
}
}
},
"Origin": {
"type": "string",
"description": "Origin of products in the Sales channel.",
"nullable": true,
"example": null
},
"Position": {
"type": "integer",
"description": "Defines the position on index.",
"nullable": true,
"example": 1
},
"ConditionRule": {
"type": "string",
"description": "Defines what is the conditional rule to activate de Sales channel.",
"nullable": true,
"example": "approved=true"
},
"CurrencyDecimalDigits": {
"type": "integer",
"description": "Quantity of Currency Decimal Digits.",
"example": 1
}
}
}
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pub/saleschannel/{salesChannelId}": {
"get": {
"tags": [
"Sales channel"
],
"summary": "Get Sales channel by ID",
"description": "Retrieves a specific sales channel by its ID. \r\n\r\n## Response body example\r\n\r\n```json\r\n{\r\n \"Id\": 1,\r\n \"Name\": \"Loja Principal\",\r\n \"IsActive\": true,\r\n \"ProductClusterId\": null,\r\n \"CountryCode\": \"BRA\",\r\n \"CultureInfo\": \"pt-BR\",\r\n \"TimeZone\": \"E. South America Standard Time\",\r\n \"CurrencyCode\": \"BRL\",\r\n \"CurrencySymbol\": \"R$\",\r\n \"CurrencyLocale\": 1046,\r\n \"CurrencyFormatInfo\": {\r\n \"CurrencyDecimalDigits\": 1,\r\n \"CurrencyDecimalSeparator\": \",\",\r\n \"CurrencyGroupSeparator\": \".\",\r\n \"CurrencyGroupSize\": 3,\r\n \"StartsWithCurrencySymbol\": true\r\n },\r\n \"Origin\": null,\r\n \"Position\": 2,\r\n \"ConditionRule\": null,\r\n \"CurrencyDecimalDigits\": 1\r\n}\r\n```",
"operationId": "SalesChannelbyId",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "salesChannelId",
"in": "path",
"description": "",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "1"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Sales channel unique identifier.",
"example": 1
},
"Name": {
"type": "string",
"description": "Sales channel name.",
"example": "Loja Principal"
},
"IsActive": {
"type": "boolean",
"description": "Defines if the Sales channel is active (`true`) or not (`false`)."
},
"ProductClusterId": {
"type": "integer",
"description": "Product Cluster ID, if the Sales channel has releated product Cluster.",
"nullable": true,
"example": null
},
"CountryCode": {
"type": "string",
"description": "Country Code in ISO 3166-1 alfa-3 Standard.",
"example": "BRA"
},
"CultureInfo": {
"type": "string",
"description": "Language Country code in LCIDstring Standard.",
"example": "pt-BR"
},
"TimeZone": {
"type": "string",
"description": "Name of Time Zone.",
"example": "E. South America Standard Time"
},
"CurrencyCode": {
"type": "string",
"description": "Currency Code in ISO 4217 standard.",
"example": "BRL"
},
"CurrencySymbol": {
"type": "string",
"description": "Currency symbol.",
"example": "R$"
},
"CurrencyLocale": {
"type": "integer",
"description": "Currency Locale Code in LCID standard.",
"example": 1046
},
"CurrencyFormatInfo": {
"type": "object",
"description": "Object with currency format.",
"properties": {
"CurrencyDecimalDigits": {
"type": "integer",
"description": "Quantity of Currency Decimal Digits.",
"example": 1
},
"CurrencyDecimalSeparator": {
"type": "string",
"description": "Defines which Currency Decimal Separator will be applied.",
"example": ","
},
"CurrencyGroupSeparator": {
"type": "string",
"description": "Defines which Currency Group Separator will be applied.",
"example": "."
},
"CurrencyGroupSize": {
"type": "integer",
"description": "Define how many characters will be grouped.",
"example": 3
},
"StartsWithCurrencySymbol": {
"type": "boolean",
"description": "Defines if all prices will be initiated with Currency Symbol (`true`) or not (`false`).",
"example": true
}
}
},
"Origin": {
"type": "string",
"description": "Origin of products in the Sales channel.",
"nullable": true,
"example": null
},
"Position": {
"type": "integer",
"description": "Defines the position on index.",
"nullable": true,
"example": 1
},
"ConditionRule": {
"type": "string",
"description": "Defines what is the conditional rule to activate de Sales channel.",
"nullable": true,
"example": "approved=true"
},
"CurrencyDecimalDigits": {
"type": "integer",
"description": "Quantity of Currency Decimal Digits.",
"example": 1
}
}
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pvt/seller/list": {
"get": {
"tags": [
"Seller"
],
"summary": "Get Seller list",
"description": "Retrieves the seller's details by its ID.",
"operationId": "SellerList",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "sc",
"in": "query",
"description": "Trade policy ID.",
"required": false,
"style": "form",
"explode": true,
"schema": {
"type": "integer",
"format": "int32",
"example": 1
}
},
{
"name": "sellerType",
"in": "query",
"description": "There are two possible values for this parameter:\n\r- `1`: Regular sellers\n\r- `2`: [White label sellers](https://help.vtex.com/en/tutorial/seller-white-label--5orlGHyDHGAYciQ64oEgKa)",
"required": false,
"style": "form",
"explode": true,
"schema": {
"type": "integer",
"format": "int32",
"example": 1
}
},
{
"name": "isBetterScope",
"in": "query",
"description": "If the seller is better scope.",
"required": false,
"style": "form",
"explode": true,
"schema": {
"type": "boolean",
"example": false
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"example": {
"SellerId": "pedrostore",
"Name": "pedrostore",
"Email": "breno@breno.com",
"Description": "",
"ExchangeReturnPolicy": "",
"DeliveryPolicy": "",
"UseHybridPaymentOptions": false,
"UserName": null,
"Password": null,
"SecutityPrivacyPolicy": "",
"CNPJ": "12035072751",
"CSCIdentification": "pedrostore",
"ArchiveId": null,
"UrlLogo": null,
"ProductCommissionPercentage": 0.0,
"FreightCommissionPercentage": 0.0,
"CategoryCommissionPercentage": "[{\"CategoryId\":14,\"ProductCommission\":15.0,\"FreightCommission\":0.0}]",
"FulfillmentEndpoint": "http://pedrostore.vtexcommercestable.com.br/api/fulfillment?affiliateid=LDB&sc=1",
"CatalogSystemEndpoint": "http://pedrostore.vtexcommercestable.com.br/api/catalog_system/",
"IsActive": true,
"MerchantName": "",
"FulfillmentSellerId": null,
"SellerType": 1,
"IsBetterScope": false,
"TrustPolicy": "Default"
},
"type": "object",
"properties": {
"SellerId": {
"type": "string",
"description": "Code used to identify the seller. It is assigned by the marketplace. We recommend filling it in with the seller's account name."
},
"Name": {
"type": "string",
"description": "Name of the account in the seller's environment. You can find it on **Account settings > Account > Account Name**). Applicable only if the seller uses their own payment method."
},
"Email": {
"type": "string",
"description": "Email of the admin responsible for the seller."
},
"Description": {
"type": "string",
"description": "Text describing the seller with a marketing tone. You can display this text in the marketplace window display by [customizing the CMS](https://help.vtex.com/en/tutorial/list-of-controls-for-templates--tutorials_563)."
},
"ExchangeReturnPolicy": {
"type": "string",
"description": "Text describing the exchange and return policy previously agreed between the marketplace and the seller."
},
"DeliveryPolicy": {
"type": "string",
"description": "Text describing the delivery policy previously agreed between the marketplace and the seller."
},
"UseHybridPaymentOptions": {
"type": "boolean",
"description": "Allows customers to use gift cards from the seller to buy their products on the marketplace. It identifies purchases made with a gift card so that only the final price (with discounts applied) is paid to the seller."
},
"UserName": {
"type": "string",
"description": "Seller username.",
"nullable": true
},
"Password": {
"type": "string",
"description": "Seller password.",
"nullable": true
},
"SecutityPrivacyPolicy": {
"type": "string",
"description": "Text describing the security policy previously agreed between the marketplace and the seller."
},
"CNPJ": {
"type": "string",
"description": "Company registration number."
},
"CSCIdentification": {
"type": "string",
"description": "CSC identification."
},
"ArchiveId": {
"type": "integer",
"description": "Seller archive ID.",
"nullable": true
},
"UrlLogo": {
"type": "string",
"description": "Seller URL logo.",
"nullable": true
},
"ProductCommissionPercentage": {
"type": "number",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`."
},
"FreightCommissionPercentage": {
"type": "number",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`."
},
"CategoryCommissionPercentage": {
"type": "string",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`."
},
"FulfillmentEndpoint": {
"type": "string",
"description": "URL of the endpoint for fulfillment of seller's orders, which the marketplace will use to communicate with the seller. This field applies to all sellers, regardless of their type. However, for `VTEX Stores`, you don't need to fill it in because the system will do that automatically. You can edit this field once the seller has been successfully added.",
"nullable": true
},
"CatalogSystemEndpoint": {
"type": "string",
"description": "URL of the endpoint of the seller's catalog. This field will only be displayed if the seller type is VTEX Store. The field format will be as follows: `http://{sellerName}.vtexcommercestable.com.br/api/catalog_system/`."
},
"IsActive": {
"type": "boolean",
"description": "If the selle is active (`true`) or not (`false`)."
},
"MerchantName": {
"type": "string",
"description": "Name of the marketplace, used to guide payments. This field should be nulled if the marketplace is responsible for processing payments. Check out our [Split Payment](https://help.vtex.com/en/tutorial/split-de-pagamento--6k5JidhYRUxileNolY2VLx) article to know more."
},
"FulfillmentSellerId": {
"type": "integer",
"description": "Identification code of the seller responsible for fulfilling the order. This is an optional field used when a seller sells SKUs from another seller. If the seller sells their own SKUs, it must be left blank.",
"nullable": true
},
"SellerType": {
"type": "integer",
"description": "Seller type."
},
"IsBetterScope": {
"type": "boolean",
"description": "Indicates whether it is a [comprehensive seller](https://help.vtex.com/en/tutorial/comprehensive-seller--5Qn4O2GpjUIzWTPpvLUfkI)."
},
"TrustPolicy": {
"type": "string",
"description": "Seller trust policy. The default value is `'Default'`, but if your store is a B2B marketplace and you want to share the customers'emails with the sellers you need to set this field as `'AllowEmailSharing'`."
}
}
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pvt/seller/{sellerId}": {
"get": {
"tags": [
"Seller"
],
"summary": "Get Seller by ID",
"description": "Retrieves the seller's details by its ID.",
"operationId": "GetSellerbyId",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "sellerId",
"in": "path",
"description": "ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "pedrostore"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"example": {
"SellerId": "pedrostore",
"Name": "pedrostore",
"Email": "breno@breno.com",
"Description": "",
"ExchangeReturnPolicy": "",
"DeliveryPolicy": "",
"UseHybridPaymentOptions": false,
"UserName": null,
"Password": null,
"SecutityPrivacyPolicy": "",
"CNPJ": "12035072751",
"CSCIdentification": "pedrostore",
"ArchiveId": null,
"UrlLogo": "",
"ProductCommissionPercentage": 0.0,
"FreightCommissionPercentage": 0.0,
"CategoryCommissionPercentage": "[{\"CategoryId\":14,\"ProductCommission\":15.0,\"FreightCommission\":0.0}]",
"FulfillmentEndpoint": "http://pedrostore.vtexcommercestable.com.br/api/fulfillment?affiliateid=LDB&sc=1",
"CatalogSystemEndpoint": "http://pedrostore.vtexcommercestable.com.br/api/catalog_system/",
"IsActive": true,
"MerchantName": "",
"FulfillmentSellerId": null,
"SellerType": 1,
"IsBetterScope": false,
"TrustPolicy": "Default"
},
"type": "object",
"description": "Object with information of all sellers in the store.",
"properties": {
"SellerId": {
"type": "string",
"description": "Code used to identify the seller. It is assigned by the marketplace. We recommend filling it in with the seller's account name."
},
"Name": {
"type": "string",
"description": "Name of the account in the seller's environment. You can find it on **Account settings > Account > Account Name**). Applicable only if the seller uses their own payment method."
},
"Email": {
"type": "string",
"description": "Email of the admin responsible for the seller."
},
"Description": {
"type": "string",
"description": "Text describing the seller with a marketing tone. You can display this text in the marketplace window display by [customizing the CMS](https://help.vtex.com/en/tutorial/list-of-controls-for-templates--tutorials_563)."
},
"ExchangeReturnPolicy": {
"type": "string",
"description": "Text describing the exchange and return policy previously agreed between the marketplace and the seller."
},
"DeliveryPolicy": {
"type": "string",
"description": "Text describing the delivery policy previously agreed between the marketplace and the seller."
},
"UseHybridPaymentOptions": {
"type": "boolean",
"description": "Allows customers to use gift cards from the seller to buy their products on the marketplace. It identifies purchases made with a gift card so that only the final price (with discounts applied) is paid to the seller. "
},
"UserName": {
"type": "string",
"description": "Seller username.",
"nullable": true
},
"Password": {
"type": "string",
"description": "Seller password.",
"nullable": true
},
"SecutityPrivacyPolicy": {
"type": "string",
"description": "Text describing the security policy previously agreed between the marketplace and the seller."
},
"CNPJ": {
"type": "string",
"description": "Company registration number."
},
"CSCIdentification": {
"type": "string",
"description": "CSC identification."
},
"ArchiveId": {
"type": "integer",
"description": "Seller archive ID.",
"nullable": true
},
"UrlLogo": {
"type": "string",
"description": "Seller URL logo."
},
"ProductCommissionPercentage": {
"type": "number",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`."
},
"FreightCommissionPercentage": {
"type": "number",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`."
},
"CategoryCommissionPercentage": {
"type": "string",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`."
},
"FulfillmentEndpoint": {
"type": "string",
"description": "URL of the endpoint for fulfillment of seller's orders, which the marketplace will use to communicate with the seller. This field applies to all sellers, regardless of their type. However, for `VTEX Stores`, you don't need to fill it in because the system will do that automatically. You can edit this field once the seller has been successfully added.",
"nullable": true
},
"CatalogSystemEndpoint": {
"type": "string",
"description": "URL of the endpoint of the seller's catalog. This field will only be displayed if the seller type is VTEX Store. The field format will be as follows: `http://{sellerName}.vtexcommercestable.com.br/api/catalog_system/`."
},
"IsActive": {
"type": "boolean",
"description": "If the selle is active (`true`) or not (`false`)."
},
"MerchantName": {
"type": "string",
"description": "Name of the marketplace, used to guide payments. This field should be nulled if the marketplace is responsible for processing payments. Check out our [Split Payment](https://help.vtex.com/en/tutorial/split-de-pagamento--6k5JidhYRUxileNolY2VLx) article to know more."
},
"FulfillmentSellerId": {
"type": "integer",
"description": "Identification code of the seller responsible for fulfilling the order. This is an optional field used when a seller sells SKUs from another seller. If the seller sells their own SKUs, it must be left blank.",
"nullable": true
},
"SellerType": {
"type": "integer",
"description": "Seller type."
},
"IsBetterScope": {
"type": "boolean",
"description": "Indicates whether it is a [comprehensive seller](https://help.vtex.com/en/tutorial/comprehensive-seller--5Qn4O2GpjUIzWTPpvLUfkI)."
},
"TrustPolicy": {
"type": "string",
"description": "Seller trust policy. The default value is `'Default'`, but if your store is a B2B marketplace and you want to share the customers'emails with the sellers you need to set this field as `'AllowEmailSharing'`."
}
}
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pvt/seller": {
"put": {
"tags": [
"Seller"
],
"summary": "Update Seller",
"description": "Updates a seller.",
"operationId": "UpdateSeller",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateSellerRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"example": {
"SellerId": "pedrostore",
"Name": "pedrostore",
"Email": "breno@breno.com",
"Description": "",
"ExchangeReturnPolicy": "",
"DeliveryPolicy": "",
"UseHybridPaymentOptions": false,
"UserName": null,
"Password": null,
"SecutityPrivacyPolicy": "",
"CNPJ": "12035072751",
"CSCIdentification": "pedrostore",
"ArchiveId": null,
"UrlLogo": null,
"ProductCommissionPercentage": 0.0,
"FreightCommissionPercentage": 0.0,
"CategoryCommissionPercentage": "[{\"CategoryId\":14,\"ProductCommission\":15.0,\"FreightCommission\":0.0}]",
"FulfillmentEndpoint": "http://pedrostore.vtexcommercestable.com.br/api/fulfillment?affiliateid=LDB&sc=1",
"CatalogSystemEndpoint": "http://pedrostore.vtexcommercestable.com.br/api/catalog_system/",
"IsActive": true,
"MerchantName": "",
"FulfillmentSellerId": null,
"SellerType": 1,
"IsBetterScope": false,
"TrustPolicy": "Default"
},
"type": "object",
"properties": {
"SellerId": {
"type": "string",
"description": "Code used to identify the seller. It is assigned by the marketplace. We recommend filling it in with the seller's account name."
},
"Name": {
"type": "string",
"description": "Name of the account in the seller's environment. You can find it on **Account settings > Account > Account Name**). Applicable only if the seller uses their own payment method."
},
"Email": {
"type": "string",
"description": "Email of the admin responsible for the seller."
},
"Description": {
"type": "string",
"description": "Text describing the seller with a marketing tone. You can display this text in the marketplace window display by [customizing the CMS](https://help.vtex.com/en/tutorial/list-of-controls-for-templates--tutorials_563)."
},
"ExchangeReturnPolicy": {
"type": "string",
"description": "Text describing the exchange and return policy previously agreed between the marketplace and the seller."
},
"DeliveryPolicy": {
"type": "string",
"description": "Text describing the delivery policy previously agreed between the marketplace and the seller."
},
"UseHybridPaymentOptions": {
"type": "boolean",
"description": "Allows customers to use gift cards from the seller to buy their products on the marketplace. It identifies purchases made with a gift card so that only the final price (with discounts applied) is paid to the seller."
},
"UserName": {
"type": "string",
"description": "Seller username.",
"nullable": true
},
"Password": {
"type": "string",
"description": "Seller password.",
"nullable": true
},
"SecutityPrivacyPolicy": {
"type": "string",
"description": "Text describing the security policy previously agreed between the marketplace and the seller."
},
"CNPJ": {
"type": "string",
"description": "Company registration number."
},
"CSCIdentification": {
"type": "string",
"description": "CSC identification."
},
"ArchiveId": {
"type": "integer",
"description": "Seller archive ID.",
"nullable": true
},
"UrlLogo": {
"type": "string",
"description": "Seller URL logo.",
"nullable": true
},
"ProductCommissionPercentage": {
"type": "number",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`."
},
"FreightCommissionPercentage": {
"type": "number",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`."
},
"CategoryCommissionPercentage": {
"type": "string",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`."
},
"FulfillmentEndpoint": {
"type": "string",
"description": "URL of the endpoint for fulfillment of seller's orders, which the marketplace will use to communicate with the seller. This field applies to all sellers, regardless of their type. However, for `VTEX Stores`, you don't need to fill it in because the system will do that automatically. You can edit this field once the seller has been successfully added.",
"nullable": true
},
"CatalogSystemEndpoint": {
"type": "string",
"description": "URL of the endpoint of the seller's catalog. This field will only be displayed if the seller type is VTEX Store. The field format will be as follows: `http://{sellerName}.vtexcommercestable.com.br/api/catalog_system/`."
},
"IsActive": {
"type": "boolean",
"description": "If the selle is active (`true`) or not (`false`)."
},
"MerchantName": {
"type": "string",
"description": "Name of the marketplace, used to guide payments. This field should be nulled if the marketplace is responsible for processing payments. Check out our [Split Payment](https://help.vtex.com/en/tutorial/split-de-pagamento--6k5JidhYRUxileNolY2VLx) article to know more."
},
"FulfillmentSellerId": {
"type": "integer",
"description": "Identification code of the seller responsible for fulfilling the order. This is an optional field used when a seller sells SKUs from another seller. If the seller sells their own SKUs, it must be left blank.",
"nullable": true
},
"SellerType": {
"type": "integer",
"description": "Seller type."
},
"IsBetterScope": {
"type": "boolean",
"description": "Indicates whether it is a [comprehensive seller](https://help.vtex.com/en/tutorial/comprehensive-seller--5Qn4O2GpjUIzWTPpvLUfkI)."
},
"TrustPolicy": {
"type": "string",
"description": "Seller trust policy. The default value is `'Default'`, but if your store is a B2B marketplace and you want to share the customers'emails with the sellers you need to set this field as `'AllowEmailSharing'`."
}
}
}
}
}
}
},
"deprecated": false
},
"post": {
"tags": [
"Seller"
],
"summary": "Create Seller",
"description": "Creates a new seller.",
"operationId": "CreateSeller",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateSellerRequest"
},
"example": {
"SellerId": "myseller",
"Name": "My Seller",
"Email": "myseller@vtex.com",
"Description": "",
"ExchangeReturnPolicy": "",
"DeliveryPolicy": "",
"UseHybridPaymentOptions": false,
"UserName": "",
"Password": "",
"SecutityPrivacyPolicy": "",
"CNPJ": "12345678912345",
"CSCIdentification": "myseller",
"ArchiveId": 1,
"UrlLogo": "",
"ProductCommissionPercentage": 1.5,
"FreightCommissionPercentage": 0,
"FulfillmentEndpoint": "http://fulfillment.vtexcommerce.com.br/api/fulfillment?affiliateid=VTX&sc=1&an=myseller",
"CatalogSystemEndpoint": "http://myseller.vtexcommercestable.com.br/api/catalog_system/",
"IsActive": true,
"FulfillmentSellerId": 2,
"SellerType": 1,
"IsBetterScope": false
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"example": {
"SellerId": "pedrostore",
"Name": "pedrostore",
"Email": "breno@breno.com",
"Description": "",
"ExchangeReturnPolicy": "",
"DeliveryPolicy": "",
"UseHybridPaymentOptions": false,
"UserName": null,
"Password": null,
"SecutityPrivacyPolicy": "",
"CNPJ": "12035072751",
"CSCIdentification": "pedrostore",
"ArchiveId": null,
"UrlLogo": null,
"ProductCommissionPercentage": 0.0,
"FreightCommissionPercentage": 0.0,
"CategoryCommissionPercentage": "[{\"CategoryId\":14,\"ProductCommission\":15.0,\"FreightCommission\":0.0}]",
"FulfillmentEndpoint": "http://pedrostore.vtexcommercestable.com.br/api/fulfillment?affiliateid=LDB&sc=1",
"CatalogSystemEndpoint": "http://pedrostore.vtexcommercestable.com.br/api/catalog_system/",
"IsActive": true,
"MerchantName": "",
"FulfillmentSellerId": null,
"SellerType": 1,
"IsBetterScope": false,
"TrustPolicy": "Default"
},
"type": "object",
"properties": {
"SellerId": {
"type": "string",
"description": "Code used to identify the seller. It is assigned by the marketplace. We recommend filling it in with the seller's account name."
},
"Name": {
"type": "string",
"description": "Name of the account in the seller's environment. You can find it on **Account settings > Account > Account Name**). Applicable only if the seller uses their own payment method."
},
"Email": {
"type": "string",
"description": "Email of the admin responsible for the seller. "
},
"Description": {
"type": "string",
"description": "Text describing the seller with a marketing tone. You can display this text in the marketplace window display by [customizing the CMS](https://help.vtex.com/en/tutorial/list-of-controls-for-templates--tutorials_563)."
},
"ExchangeReturnPolicy": {
"type": "string",
"description": "Text describing the exchange and return policy previously agreed between the marketplace and the seller."
},
"DeliveryPolicy": {
"type": "string",
"description": "Text describing the delivery policy previously agreed between the marketplace and the seller."
},
"UseHybridPaymentOptions": {
"type": "boolean",
"description": "Allows customers to use gift cards from the seller to buy their products on the marketplace. It identifies purchases made with a gift card so that only the final price (with discounts applied) is paid to the seller. "
},
"UserName": {
"type": "string",
"description": "Seller username.",
"nullable": true
},
"Password": {
"type": "string",
"description": "Seller password.",
"nullable": true
},
"SecutityPrivacyPolicy": {
"type": "string",
"description": "Text describing the security policy previously agreed between the marketplace and the seller."
},
"CNPJ": {
"type": "string",
"description": "Company registration number."
},
"CSCIdentification": {
"type": "string",
"description": "CSC identification."
},
"ArchiveId": {
"type": "integer",
"description": "Seller archive ID.",
"nullable": true
},
"UrlLogo": {
"type": "string",
"description": "Seller URL logo.",
"nullable": true
},
"ProductCommissionPercentage": {
"type": "number",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`."
},
"FreightCommissionPercentage": {
"type": "number",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`."
},
"CategoryCommissionPercentage": {
"type": "string",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`."
},
"FulfillmentEndpoint": {
"type": "string",
"description": "URL of the endpoint for fulfillment of seller's orders, which the marketplace will use to communicate with the seller. This field applies to all sellers, regardless of their type. However, for `VTEX Stores`, you don't need to fill it in because the system will do that automatically. You can edit this field once the seller has been successfully added.",
"nullable": true
},
"CatalogSystemEndpoint": {
"type": "string",
"description": "URL of the endpoint of the seller's catalog. This field will only be displayed if the seller type is VTEX Store. The field format will be as follows: `http://{sellerName}.vtexcommercestable.com.br/api/catalog_system/`."
},
"IsActive": {
"type": "boolean",
"description": "If the selle is active (`true`) or not (`false`)."
},
"MerchantName": {
"type": "string",
"description": "Name of the marketplace, used to guide payments. This field should be nulled if the marketplace is responsible for processing payments. Check out our [Split Payment](https://help.vtex.com/en/tutorial/split-de-pagamento--6k5JidhYRUxileNolY2VLx) article to know more."
},
"FulfillmentSellerId": {
"type": "integer",
"description": "Identification code of the seller responsible for fulfilling the order. This is an optional field used when a seller sells SKUs from another seller. If the seller sells their own SKUs, it must be left blank.",
"nullable": true
},
"SellerType": {
"type": "integer",
"description": "Seller type."
},
"IsBetterScope": {
"type": "boolean",
"description": "Indicates whether it is a [comprehensive seller](https://help.vtex.com/en/tutorial/comprehensive-seller--5Qn4O2GpjUIzWTPpvLUfkI)."
},
"TrustPolicy": {
"type": "string",
"description": "Seller trust policy. The default value is `'Default'`, but if your store is a B2B marketplace and you want to share the customers'emails with the sellers you need to set this field as `'AllowEmailSharing'`."
}
}
}
}
}
}
}
}
},
"/api/catalog_system/pvt/sellers/{sellerId}": {
"get": {
"tags": [
"Seller"
],
"summary": "Get Seller by ID",
"description": "Retrieves the seller's details by its ID.",
"operationId": "GetSellersbyId",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "sellerId",
"in": "path",
"description": "ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "pedrostore"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"example": {
"SellerId": "pedrostore",
"Name": "pedrostore",
"Email": "breno@breno.com",
"Description": "",
"ExchangeReturnPolicy": "",
"DeliveryPolicy": "",
"UseHybridPaymentOptions": false,
"UserName": null,
"Password": null,
"SecutityPrivacyPolicy": "",
"CNPJ": "12035072751",
"CSCIdentification": "pedrostore",
"ArchiveId": null,
"UrlLogo": "",
"ProductCommissionPercentage": 0.0,
"FreightCommissionPercentage": 0.0,
"CategoryCommissionPercentage": "[{\"CategoryId\":14,\"ProductCommission\":15.0,\"FreightCommission\":0.0}]",
"FulfillmentEndpoint": "http://pedrostore.vtexcommercestable.com.br/api/fulfillment?affiliateid=LDB&sc=1",
"CatalogSystemEndpoint": "http://pedrostore.vtexcommercestable.com.br/api/catalog_system/",
"IsActive": true,
"MerchantName": "",
"FulfillmentSellerId": null,
"SellerType": 1,
"IsBetterScope": false,
"TrustPolicy": "Default"
},
"type": "object",
"description": "Object with information of all sellers in the store.",
"properties": {
"SellerId": {
"type": "string",
"description": "Code used to identify the seller. It is assigned by the marketplace. We recommend filling it in with the seller's account name."
},
"Name": {
"type": "string",
"description": "Name of the account in the seller's environment. You can find it on **Account settings > Account > Account Name**). Applicable only if the seller uses their own payment method.",
"nullable": true
},
"Email": {
"type": "string",
"description": "Email of the admin responsible for the seller. ",
"nullable": true
},
"Description": {
"type": "string",
"description": "Text describing the seller with a marketing tone. You can display this text in the marketplace window display by [customizing the CMS](https://help.vtex.com/en/tutorial/list-of-controls-for-templates--tutorials_563)."
},
"ExchangeReturnPolicy": {
"type": "string",
"description": "Text describing the exchange and return policy previously agreed between the marketplace and the seller."
},
"DeliveryPolicy": {
"type": "string",
"description": "Text describing the delivery policy previously agreed between the marketplace and the seller."
},
"UseHybridPaymentOptions": {
"type": "boolean",
"description": "Allows customers to use gift cards from the seller to buy their products on the marketplace. It identifies purchases made with a gift card so that only the final price (with discounts applied) is paid to the seller. "
},
"UserName": {
"type": "string",
"description": "Seller username.",
"nullable": true
},
"Password": {
"type": "string",
"description": "Seller password.",
"nullable": true
},
"SecutityPrivacyPolicy": {
"type": "string",
"description": "Text describing the security policy previously agreed between the marketplace and the seller."
},
"CNPJ": {
"type": "string",
"description": "Company registration number."
},
"CSCIdentification": {
"type": "string",
"description": "CSC identification."
},
"ArchiveId": {
"type": "integer",
"description": "Seller archive ID.",
"nullable": true
},
"UrlLogo": {
"type": "string",
"description": "Seller URL logo."
},
"ProductCommissionPercentage": {
"type": "number",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`."
},
"FreightCommissionPercentage": {
"type": "number",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`."
},
"CategoryCommissionPercentage": {
"type": "string",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`."
},
"FulfillmentEndpoint": {
"type": "string",
"description": "URL of the endpoint for fulfillment of seller's orders, which the marketplace will use to communicate with the seller. This field applies to all sellers, regardless of their type. However, for `VTEX Stores`, you don't need to fill it in because the system will do that automatically. You can edit this field once the seller has been successfully added.",
"nullable": true
},
"CatalogSystemEndpoint": {
"type": "string",
"description": "URL of the endpoint of the seller's catalog. This field will only be displayed if the seller type is VTEX Store. The field format will be as follows: `http://{sellerName}.vtexcommercestable.com.br/api/catalog_system/`."
},
"IsActive": {
"type": "boolean",
"description": "If the selle is active (`true`) or not (`false`)."
},
"MerchantName": {
"type": "string",
"description": "Name of the marketplace, used to guide payments. This field should be nulled if the marketplace is responsible for processing payments. Check out our [Split Payment](https://help.vtex.com/en/tutorial/split-de-pagamento--6k5JidhYRUxileNolY2VLx) article to know more."
},
"FulfillmentSellerId": {
"type": "integer",
"description": "Identification code of the seller responsible for fulfilling the order. This is an optional field used when a seller sells SKUs from another seller. If the seller sells their own SKUs, it must be left blank.",
"nullable": true
},
"SellerType": {
"type": "integer",
"description": "Seller type."
},
"IsBetterScope": {
"type": "boolean",
"description": "Indicates whether it is a [comprehensive seller](https://help.vtex.com/en/tutorial/comprehensive-seller--5Qn4O2GpjUIzWTPpvLUfkI)."
},
"TrustPolicy": {
"type": "string",
"description": "Seller trust policy. The default value is `'Default'`, but if your store is a B2B marketplace and you want to share the customers'emails with the sellers you need to set this field as `'AllowEmailSharing'`."
}
}
}
}
}
}
},
"deprecated": false
}
},
"/api/catalog/pvt/supplier": {
"post": {
"tags": [
"Supplier"
],
"summary": "Create Supplier",
"description": "Creates a new Supplier. \r\n## Request body example\r\n\r\n```json\r\n{\r\n \"Name\": \"Supplier\",\r\n \"CorporateName\": \"TopStore\",\r\n \"StateInscription\": \"\",\r\n \"Cnpj\": \"33304981001272\",\r\n \"Phone\": \"3333333333\",\r\n \"CellPhone\": \"4444444444\",\r\n \"CorportePhone\": \"5555555555\",\r\n \"Email\": \"email@email.com\",\r\n \"IsActive\": true\r\n}\r\n```\r\n\r\n## Response body example\r\n\r\n```json\r\n{\r\n \"Id\": 1,\r\n \"Name\": \"Supplier\",\r\n \"CorporateName\": \"TopStore\",\r\n \"StateInscription\": \"\",\r\n \"Cnpj\": \"33304981001272\",\r\n \"Phone\": \"3333333333\",\r\n \"CellPhone\": \"4444444444\",\r\n \"CorportePhone\": \"5555555555\",\r\n \"Email\": \"email@email.com\",\r\n \"IsActive\": true\r\n}\r\n```",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SupplierRequest"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SupplierResponse"
}
}
}
}
}
}
},
"/api/catalog/pvt/supplier/{supplierId}": {
"put": {
"tags": [
"Supplier"
],
"summary": "Update Supplier",
"description": "Updates general information of an existing Supplier. \r\n## Request body example\r\n\r\n```json\r\n{\r\n \"Name\": \"Supplier\",\r\n \"CorporateName\": \"TopStore\",\r\n \"StateInscription\": \"\",\r\n \"Cnpj\": \"33304981001272\",\r\n \"Phone\": \"3333333333\",\r\n \"CellPhone\": \"4444444444\",\r\n \"CorportePhone\": \"5555555555\",\r\n \"Email\": \"email@email.com\",\r\n \"IsActive\": true\r\n}\r\n```\r\n\r\n## Response body example\r\n\r\n```json\r\n{\r\n \"Id\": 1,\r\n \"Name\": \"Supplier\",\r\n \"CorporateName\": \"TopStore\",\r\n \"StateInscription\": \"\",\r\n \"Cnpj\": \"33304981001272\",\r\n \"Phone\": \"3333333333\",\r\n \"CellPhone\": \"4444444444\",\r\n \"CorportePhone\": \"5555555555\",\r\n \"Email\": \"email@email.com\",\r\n \"IsActive\": true\r\n}\r\n```",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "supplierId",
"in": "path",
"required": true,
"description": "Supplier's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SupplierRequest"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SupplierResponse"
}
}
}
}
}
},
"delete": {
"tags": [
"Supplier"
],
"summary": "Delete Supplier",
"description": "Deletes an existing Supplier.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "supplierId",
"in": "path",
"required": true,
"description": "Supplier's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog/pvt/product/{productId}/salespolicy": {
"get": {
"tags": [
"Trade policy"
],
"summary": "Get Trade Policies by product ID",
"description": "Retrieves a list of Trade Policies associated to a product based on the product's ID. \r\n## Response body example\r\n\r\n```json\r\n[\r\n {\r\n \"ProductId\": 1,\r\n \"StoreId\": 1\r\n },\r\n {\r\n \"ProductId\": 1,\r\n \"StoreId\": 2\r\n },\r\n {\r\n \"ProductId\": 1,\r\n \"StoreId\": 3\r\n },\r\n {\r\n \"ProductId\": 1,\r\n \"StoreId\": 4\r\n }\r\n]\r\n```",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"required": true,
"description": "Product's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"description": "Object containing the product ID and the trade policy ID.",
"properties": {
"ProductId": {
"type": "integer",
"description": "Product's unique numerical identifier.",
"example": 1
},
"StoreId": {
"type": "integer",
"description": "Trade policy's unique numerical identifier.",
"example": 1
}
}
}
}
}
}
}
}
}
},
"/api/catalog/pvt/product/{productId}/salespolicy/{tradepolicyId}": {
"post": {
"tags": [
"Trade policy"
],
"summary": "Associate product with trade policy",
"description": "Associates an existing trade policy with a product.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"required": true,
"description": "Product's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "tradepolicyId",
"in": "path",
"required": true,
"description": "Trade policy's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
},
"delete": {
"tags": [
"Trade policy"
],
"summary": "Remove product from trade policy",
"description": "Disassociates a trade policy of a product.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"required": true,
"description": "Product's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "tradepolicyId",
"in": "path",
"required": true,
"description": "Trade policy's unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/catalog_system/pvt/sku/stockkeepingunitidsbysaleschannel": {
"get": {
"tags": [
"Trade policy"
],
"summary": "List all SKUs of a trade policy",
"description": "Retrieves a list of SKU IDs of a trade policy.",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "sc",
"in": "query",
"required": true,
"description": "Trade policy's unique numerical identifier.",
"style": "form",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "page",
"in": "query",
"required": false,
"description": "Page number.",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "pageSize",
"in": "query",
"required": false,
"description": "Number of items in the page.",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "onlyAssigned",
"in": "query",
"required": false,
"description": "If set as `false`, it allows the user to decide if the SKUs that are not assigned to a specific trade policy should be also returned.",
"schema": {
"type": "boolean",
"example": true
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"example": [
405380,
405381,
405382,
405383,
405384,
405385,
405386,
405387,
405388,
405389,
405390,
405391,
405392,
405393,
405394,
405395,
405396,
405397,
405398,
405399,
405400,
405556
],
"schema": {
"type": "array",
"description": "List of SKU IDs of the trade policy.",
"items": {
"type": "integer",
"example": 1
}
}
}
}
}
}
}
},
"/api/catalog_system/pvt/products/GetIndexedInfo/{productId}": {
"get": {
"tags": [
"Product indexing"
],
"summary": "Get product Indexed Information",
"description": "Retrieve details of a product's Indexed Information in XML format. \r\n## Response body example\r\n\r\n```xml\r\n\"\r\n\\n\r\n\\n\r\n \r\n true\r\n 0\r\n 2\r\n \r\n *\r\n \r\n instanceId:394dbdc8-b1f4-4dea-adfa-1ec104f3bfe1\r\n productId:1\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \\n\r\n\\n\"\r\n```",
"operationId": "IndexedInfo",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "productId",
"in": "path",
"description": "Product's unique numerical identifier.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "1"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"xml": {}
}
}
},
"deprecated": false
}
},
"/api/catalog_system/pvt/commercialcondition/list": {
"get": {
"tags": [
"Commercial conditions"
],
"summary": "Get all commercial conditions",
"description": "Lists all commercial conditions on the store. \r\n## Response body example\r\n\r\n```json\r\n[\r\n {\r\n \"Id\": 1,\r\n \"Name\": \"Padrão\",\r\n \"IsDefault\": true\r\n },\r\n {\r\n \"Id\": 2,\r\n \"Name\": \"Teste Fast\",\r\n \"IsDefault\": false\r\n }\r\n]\r\n```",
"operationId": "GetAllCommercialConditions",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"example": [
{
"Id": 1,
"Name": "Padrão",
"IsDefault": true
},
{
"Id": 2,
"Name": "Secundária",
"IsDefault": false
},
{
"Id": 3,
"Name": "Parcelamento 18x",
"IsDefault": false
}
],
"items": {
"type": "object",
"description": "Object with information of the commercial condition.",
"example": {
"Id": 1,
"Name": "Padrão",
"IsDefault": true
},
"properties": {
"Id": {
"type": "integer",
"description": "Commercial condition ID.",
"example": 1
},
"Name": {
"type": "string",
"description": "Commercial condition name.",
"example": "Padrão"
},
"IsDefault": {
"type": "boolean",
"description": "Defines if the commercial condition is default (`true`) or not (`false`).",
"example": true
}
}
}
}
}
}
}
}
}
},
"/api/catalog_system/pvt/commercialcondition/{commercialConditionId}": {
"get": {
"tags": [
"Commercial conditions"
],
"summary": "Get commercial condition",
"description": "Retrieves information of a commercial condition by its ID. \r\n## Response body example\r\n\r\n```json\r\n{\r\n \"Id\": 1,\r\n \"Name\": \"Padrão\",\r\n \"IsDefault\": true\r\n}\r\n```",
"operationId": "GetCommercialConditions",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "commercialConditionId",
"in": "path",
"required": true,
"description": "Commercial condition unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"description": "Object with information of the commercial condition.",
"example": {
"Id": 1,
"Name": "Padrão",
"IsDefault": true
},
"properties": {
"Id": {
"type": "integer",
"description": "Commercial condition ID.",
"example": 1
},
"Name": {
"type": "string",
"description": "Commercial condition name.",
"example": "Padrão"
},
"IsDefault": {
"type": "boolean",
"description": "If the commercial condition is default (`true`) or not (`false`).",
"example": true
}
}
}
}
}
}
}
}
},
"/api/addon/pvt/giftlist/get/{listId}": {
"get": {
"tags": [
"Gift list"
],
"summary": "Get Gift list",
"description": "Retrieves information about a Gift list by its ID.",
"operationId": "GetGiftList",
"parameters": [
{
"$ref": "#/components/parameters/Content-Type"
},
{
"$ref": "#/components/parameters/Accept"
},
{
"name": "listId",
"in": "path",
"required": true,
"description": "Gift list unique numerical identifier.",
"schema": {
"type": "integer",
"example": 1
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"description": "Object with information about the Gift list.",
"example": {
"giftListId": 1,
"name": "My list",
"userId": "010956A4-A74A-4375-8B7B-3B3B7B89B483",
"clientId": 3,
"fileId": null,
"giftListTypeId": 1,
"giftListTypeName": "Lista de Casamento",
"giftCardId": 2,
"message": "mensageeeem",
"urlFolder": "lili",
"dateCreated": "2011-05-04T13:23:00",
"profileSystemUserAddressName": "CASA",
"profileSystemUserId": "010956A4-A74A-4375-8B7B-3B3B7B89B483",
"eventDate": "2012-12-21T00:00:00",
"eventLocation": "",
"eventCity": "",
"eventState": "",
"telemarketingId": null,
"telemarketingObservation": "",
"IsPublic": false,
"isActive": false,
"shipsToOwner": false,
"isAddressOk": true,
"version": 1,
"giftCardRechargeSkuId": null,
"memberNames": "sei lá",
"giftListMembers": [],
"giftListSkuIds": [],
"address": null,
"fileUrl": null
},
"properties": {
"giftListId": {
"type": "integer",
"description": "Gift list ID.",
"example": 1
},
"name": {
"type": "string",
"description": "Gift list name.",
"example": "My list"
},
"userId": {
"type": "string",
"description": "User ID.",
"example": "a6e7d995-e884-409d-911f-36b25c40169a"
},
"fileId": {
"type": "integer",
"description": "File ID.",
"example": 155233,
"nullable": true
},
"giftListTypeId": {
"type": "integer",
"description": "Gift list Type ID.",
"example": 1
},
"giftListTypeName": {
"type": "string",
"description": "Gift list Type name.",
"example": "Wedding list"
},
"giftCardId": {
"type": "integer",
"description": "Gift Card ID.",
"example": 2
},
"message": {
"type": "string",
"description": "Gift list message.",
"example": "This is a gift list for my wedding."
},
"urlFolder": {
"type": "string",
"description": "Slug of the gift list that will be part of its URL.",
"example": "myweddinglist"
},
"dateCreated": {
"type": "string",
"description": "Date when the gift list was created.",
"example": "2013-10-31T19:03:00"
},
"profileSystemUserAddressName": {
"type": "string",
"description": "Name of the user's address.",
"example": "CASA"
},
"profileSystemUserId": {
"type": "string",
"description": "User ID on Profile System.",
"example": "a6e7d995-e884-409d-911f-36b25c40169a"
},
"eventDate": {
"type": "string",
"description": "Date of the event associated with the Gift list.",
"example": "2014-07-20T00:00:00"
},
"eventLocation": {
"type": "string",
"description": "Location of the event associated with the Gift list.",
"example": "Botafogo"
},
"eventCity": {
"type": "string",
"description": "City of the event associated with the Gift list.",
"example": "Rio de Janeiro"
},
"eventState": {
"type": "string",
"description": "State of the event associated with the Gift list.",
"example": "RJ"
},
"telemarketingId": {
"type": "integer",
"description": "Telemarketing ID.",
"example": 1,
"nullable": true
},
"telemarketingObservation": {
"type": "string",
"description": "Telemarketing observation.",
"example": ""
},
"IsPublic": {
"type": "boolean",
"description": "Defines if the gift list is public.",
"example": true
},
"isActive": {
"type": "boolean",
"description": "Defines if the gift list is active.",
"example": true
},
"shipsToOwner": {
"type": "boolean",
"description": "Defines if items purchased from the gift list will be shipped to the owner of the gift list.",
"example": false
},
"isAddressOk": {
"type": "boolean",
"description": "Validates the address of the gift list.",
"example": false
},
"version": {
"type": "integer",
"description": "Version of the gift list.",
"example": 1
},
"giftCardRechargeSkuId": {
"type": "integer",
"description": "ID of the SKU that recharges the gift card.",
"example": 1,
"nullable": true
},
"memberNames": {
"type": "string",
"description": "Name of the members of the gift list.",
"example": "Rafael Villa-Verde"
},
"giftListMembers": {
"type": "array",
"description": "Array of members of the gift list.",
"items": {
"type": "object",
"description": "Object with information about each gift list member.",
"properties": {
"giftListMemberId": {
"type": "integer",
"description": "Gift list member ID."
},
"giftListId": {
"type": "integer",
"description": "Gift list ID."
},
"userId": {
"type": "string",
"description": "User ID."
},
"clientId": {
"type": "string",
"description": "Client ID.",
"nullable": true
},
"title": {
"type": "string",
"description": "Title of the Gift list member.",
"nullable": true
},
"name": {
"type": "string",
"description": "Name of the Gift list member."
},
"surname": {
"type": "string",
"description": "Surname of the Gift list member."
},
"isAdmin": {
"type": "boolean",
"description": "Defines if the Gift list member is an administrator of the Gift list or not."
},
"isActive": {
"type": "boolean",
"description": "Defines if the Gift list user is active or not."
},
"text1": {
"type": "string",
"description": "Complementary text.",
"nullable": true
},
"text2": {
"type": "string",
"description": "Complementary text.",
"nullable": true
}
},
"example": {
"giftListMemberId": 1,
"giftListId": 2,
"userId": "010956A4-A74A-4375-8B7B-3B3B7B89B483",
"clientId": null,
"title": null,
"name": "Rafael",
"surname": "Villa-Verde",
"isAdmin": true,
"isActive": true,
"text1": null,
"text2": null
}
}
},
"giftListSkuIds": {
"type": "array",
"description": "Array with the IDs of SKUs that are part of the gift list.",
"items": {
"type": "string",
"description": "SKU ID."
}
},
"address": {
"type": "string",
"description": "Address of the gift list.",
"example": "Botafogo",
"nullable": true
},
"fileUrl": {
"type": "string",
"description": "File URL.",
"example": "/arquivos/ids/155233-800-800/gl-0_635266293044683588.jpg",
"nullable": true
}
}
}
}
}
}
}
}
}
},
"security": [
{
"appKey": [],
"appToken": []
},
{
"VtexIdclientAutCookie": []
}
],
"components": {
"securitySchemes": {
"appKey": {
"type": "apiKey",
"in": "header",
"name": "X-VTEX-API-AppKey",
"description": "Unique identifier of the [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys)."
},
"appToken": {
"type": "apiKey",
"in": "header",
"name": "X-VTEX-API-AppToken",
"description": "Secret token of the [application key](https://developers.vtex.com/docs/guides/api-authentication-using-application-keys)."
},
"VtexIdclientAutCookie": {
"type": "apiKey",
"in": "header",
"name": "VtexIdclientAutCookie",
"description": "[User token](https://developers.vtex.com/docs/guides/api-authentication-using-user-tokens), valid for 24 hours."
}
},
"parameters": {
"Content-Type": {
"name": "Content-Type",
"in": "header",
"description": "Type of the content being sent.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"default": "application/json"
}
},
"Accept": {
"name": "Accept",
"in": "header",
"description": "HTTP Client Negotiation _Accept_ Header. Indicates the types of responses the client can understand.",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"default": "application/json"
}
}
},
"schemas": {
"SKUFileURL": {
"type": "object",
"required": [
"Name",
"Url"
],
"properties": {
"IsMain": {
"type": "boolean",
"description": "Defines if the image is the main image of the SKU.",
"example": true
},
"Label": {
"type": "string",
"description": "SKU image label.",
"example": "Main"
},
"Name": {
"type": "string",
"description": "SKU image name.",
"example": "Nike-Red-Janoski-1"
},
"Text": {
"type": "string",
"description": "General text of the image.",
"example": "Nike-Red-Janoski",
"nullable": true
},
"Url": {
"type": "string",
"description": "External image's URL. The URL must start with the protocol identifier (`http://` or `https://`) and end with the file extension (`.jpg`, `.png` or `.gif`).",
"example": "https://m.media-amazon.com/images/I/610G2-sJx5L._AC_UX695_.jpg"
}
}
},
"SKUFile": {
"type": "string",
"format": "binary",
"description": "The image file has a size limit of 3200 x 3200 pixels."
},
"GetCategoryTree": {
"required": [
"id",
"name",
"hasChildren",
"url",
"children",
"Title",
"MetaTagDescription"
],
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32",
"description": "Category ID.",
"example": 1
},
"name": {
"type": "string",
"description": "Category name.",
"example": "Toys"
},
"hasChildren": {
"type": "boolean",
"description": "If the category has a category child (`true`) or not (`false`).",
"example": true
},
"url": {
"type": "string",
"description": "Category URL.",
"example": "https://lojadobreno.vtexcommercestable.com.br/toys"
},
"children": {
"type": "array",
"items": {
"$ref": "#/components/schemas/GetCategoryTreeChild"
},
"description": "Array with information about the category's children."
},
"Title": {
"type": "string",
"description": "Category page title.",
"example": "Toys"
},
"MetaTagDescription": {
"type": "string",
"description": "Category page Meta tag description.",
"example": "New and used toys for sale."
}
},
"example": {
"id": 1,
"name": "Alimentação",
"hasChildren": true,
"url": "https://lojadobreno.vtexcommercestable.com.br/alimentacao",
"children": [
{
"id": 6,
"name": "Bebedouro",
"hasChildren": false,
"url": "https://lojadobreno.vtexcommercestable.com.br/alimentacao/bebedouro",
"children": [],
"Title": "Bebedouro para Gatos",
"MetaTagDescription": ""
},
{
"id": 7,
"name": "Comedouro",
"hasChildren": false,
"url": "https://lojadobreno.vtexcommercestable.com.br/alimentacao/comedouro",
"children": [],
"Title": "Comedouro para Gatos",
"MetaTagDescription": ""
},
{
"id": 8,
"name": "Biscoitos",
"hasChildren": false,
"url": "https://lojadobreno.vtexcommercestable.com.br/alimentacao/biscoitos",
"children": [],
"Title": "Biscoitos para Gatos",
"MetaTagDescription": ""
},
{
"id": 9,
"name": "Petiscos",
"hasChildren": false,
"url": "https://lojadobreno.vtexcommercestable.com.br/alimentacao/petiscos",
"children": [],
"Title": "Petiscos para Gatos",
"MetaTagDescription": ""
},
{
"id": 10,
"name": "Ração Seca",
"hasChildren": false,
"url": "https://lojadobreno.vtexcommercestable.com.br/alimentacao/racao-seca",
"children": [],
"Title": "Ração Seca para Gatos",
"MetaTagDescription": ""
},
{
"id": 11,
"name": "Ração Úmida",
"hasChildren": false,
"url": "https://lojadobreno.vtexcommercestable.com.br/alimentacao/racao-umida",
"children": [],
"Title": "Ração Úmida para Gatos",
"MetaTagDescription": ""
}
],
"Title": "Alimentação para Gatos",
"MetaTagDescription": ""
}
},
"GetCategoryTreeChild": {
"required": [
"id",
"name",
"hasChildren",
"url",
"children",
"Title",
"MetaTagDescription"
],
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32",
"description": "Category ID.",
"example": 1
},
"name": {
"type": "string",
"description": "Category name.",
"example": "Dolls"
},
"hasChildren": {
"type": "boolean",
"description": "If the category has a category child (`true`) or not (`false`).",
"example": true
},
"url": {
"type": "string",
"description": "Category URL.",
"example": "https://lojadobreno.vtexcommercestable.com.br/dolls"
},
"children": {
"type": "array",
"description": "Array with information about the category's children.",
"items": {}
},
"Title": {
"type": "string",
"description": "Category page title.",
"example": "Dolls"
},
"MetaTagDescription": {
"type": "string",
"description": "Category page Meta tag description.",
"example": "New and used dolls for sale."
}
},
"example": {
"id": 78,
"name": "Xbox 360",
"hasChildren": false,
"url": "https://ambienteqa.vtexcommercestable.com.br/games/xbox-360",
"children": [
{
"id": 79,
"name": "Consoles",
"hasChildren": false,
"url": "https://ambienteqa.vtexcommercestable.com.br/games/xbox-360/consoles",
"children": []
},
{
"id": 126,
"name": "Acessorio",
"hasChildren": false,
"url": "https://ambienteqa.vtexcommercestable.com.br/games/xbox-360/acessorio",
"children": []
}
],
"Title": "Games",
"MetaTagDescription": "Video games."
}
},
"Category": {
"required": [
"Id",
"Name",
"FatherCategoryId",
"Title",
"Description",
"Keywords",
"IsActive",
"LomadeeCampaignCode",
"AdWordsRemarketingCode",
"ShowInStoreFront",
"ShowBrandFilter",
"ActiveStoreFrontLink",
"GlobalCategoryId",
"StockKeepingUnitSelectionMode",
"Score",
"LinkId",
"HasChildren"
],
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Category ID."
},
"Name": {
"type": "string",
"description": "Category name."
},
"FatherCategoryId": {
"type": "integer",
"description": "ID of the father category, apply in case of category and subcategory.",
"nullable": true
},
"Title": {
"type": "string",
"description": "Category page title."
},
"Description": {
"type": "string",
"description": "Describes details about the category."
},
"Keywords": {
"type": "string",
"description": "Substitutes words for the category."
},
"IsActive": {
"type": "boolean",
"description": "Shows if the category is active (`true`) or not (`false`)."
},
"LomadeeCampaignCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true
},
"AdWordsRemarketingCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true
},
"ShowInStoreFront": {
"type": "boolean",
"description": "Defines if the category is shown on side and upper menu (`true`) or not (`false`)."
},
"ShowBrandFilter": {
"type": "boolean",
"description": "Defines if the category has brand filter (`true`) or not (`false`)."
},
"ActiveStoreFrontLink": {
"type": "boolean",
"description": "Defines if the category has an active link on the website (`true`) or not (`false`)."
},
"GlobalCategoryId": {
"type": "integer",
"description": "Google global category ID."
},
"StockKeepingUnitSelectionMode": {
"type": "string",
"description": "Defines how the SKU will be exhibited."
},
"Score": {
"type": "integer",
"description": "Score for search ordination.",
"nullable": true
},
"LinkId": {
"type": "string",
"description": "Text link.",
"nullable": true
},
"HasChildren": {
"type": "boolean",
"description": "Defines if the category has child categories (`true`) or not (`false`)."
}
},
"example": {
"Id": 1,
"Name": "Home Appliances",
"FatherCategoryId": null,
"Title": "Home Appliances",
"Description": "Discover our range of home appliances. Find smart vacuums, kitchen and laundry appliances to suit your needs. Order online now.",
"Keywords": "Kitchen, Laundry, Appliances",
"IsActive": true,
"LomadeeCampaignCode": "",
"AdWordsRemarketingCode": "",
"ShowInStoreFront": true,
"ShowBrandFilter": true,
"ActiveStoreFrontLink": true,
"GlobalCategoryId": 3367,
"StockKeepingUnitSelectionMode": "LIST",
"Score": null,
"LinkId": "Alimentacao",
"HasChildren": true
}
},
"CreateCategoryRequest": {
"type": "object",
"required": [
"Name",
"Keywords",
"Title",
"Description",
"AdWordsRemarketingCode",
"LomadeeCampaignCode",
"FatherCategoryId",
"GlobalCategoryId",
"ShowInStoreFront",
"IsActive",
"ActiveStoreFrontLink",
"ShowBrandFilter",
"Score",
"StockKeepingUnitSelectionMode"
],
"properties": {
"Id": {
"type": "integer",
"description": "Category unique identifier. If not informed, it will be automatically generated by VTEX.",
"example": 1
},
"Name": {
"type": "string",
"description": "Category name.",
"example": "Home Appliances"
},
"Keywords": {
"type": "string",
"description": "Substitute words for the category.",
"example": "Kitchen, Laundry, Appliances"
},
"Title": {
"type": "string",
"description": "Text used in title tag for category page.",
"example": "Home Appliances"
},
"Description": {
"type": "string",
"description": "Text used in meta description tag for category page.",
"example": "Discover our range of home appliances. Find smart vacuums, kitchen and laundry appliances to suit your needs. Order online now."
},
"AdWordsRemarketingCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"example": "Sale",
"nullable": true,
"deprecated": true
},
"LomadeeCampaignCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"example": "Sale",
"nullable": true,
"deprecated": true
},
"FatherCategoryId": {
"type": "integer",
"description": "ID of the parent category, apply in case of category and subcategory.",
"example": 2,
"nullable": true
},
"GlobalCategoryId": {
"type": "integer",
"description": "Google global category ID.",
"example": 222
},
"ShowInStoreFront": {
"type": "boolean",
"description": "If `true`, the category is shown in the top and side menu.",
"example": true
},
"IsActive": {
"type": "boolean",
"description": "If `true`, the category page becomes available in store.",
"example": true
},
"ActiveStoreFrontLink": {
"type": "boolean",
"description": "If `true`, the category link becomes active in store.",
"example": true
},
"ShowBrandFilter": {
"type": "boolean",
"description": "If `true`, the category page displays a brand filter.",
"example": true
},
"Score": {
"type": "integer",
"description": "Score for search sorting order.",
"nullable": true,
"example": 3
},
"StockKeepingUnitSelectionMode": {
"type": "string",
"description": "Defines how the SKU will be exhibited",
"example": "SPECIFICATION"
}
},
"example": {
"Name": "Home Appliances",
"FatherCategoryId": null,
"Title": "Home Appliances",
"Description": "Discover our range of home appliances. Find smart vacuums, kitchen and laundry appliances to suit your needs. Order online now.",
"Keywords": "Kitchen, Laundry, Appliances",
"IsActive": true,
"LomadeeCampaignCode": null,
"AdWordsRemarketingCode": null,
"ShowInStoreFront": true,
"ShowBrandFilter": true,
"ActiveStoreFrontLink": true,
"GlobalCategoryId": 800,
"StockKeepingUnitSelectionMode": "SPECIFICATION",
"Score": null
}
},
"GetorUpdateProductSpecification": {
"required": [
"Value"
],
"type": "object",
"properties": {
"Value": {
"type": "array",
"description": "Array with specification values.",
"items": {
"type": "string",
"description": "Specification value.",
"example": "Cotton"
}
},
"Id": {
"type": "integer",
"format": "int32",
"description": "Specification field ID, which is the same as `FieldId` in other specification endpoints.",
"example": 7
},
"Name": {
"type": "string",
"description": "Name of the specification.",
"example": "Fabric"
}
},
"example": {
"Value": [
"Iron",
"Plastic"
],
"Id": 30,
"Name": "Material"
}
},
"GetSKUandContext": {
"required": [
"Id",
"ProductId",
"NameComplete",
"ProductName",
"ProductDescription",
"SkuName",
"IsActive",
"IsTransported",
"IsInventoried",
"IsGiftCardRecharge",
"ImageUrl",
"DetailUrl",
"CSCIdentification",
"BrandId",
"BrandName",
"Dimension",
"RealDimension",
"ManufacturerCode",
"IsKit",
"KitItems",
"Services",
"Categories",
"Attachments",
"Collections",
"SkuSellers",
"SalesChannels",
"Images",
"SkuSpecifications",
"ProductSpecifications",
"ProductClustersIds",
"ProductCategoryIds",
"ProductGlobalCategoryId",
"ProductCategories",
"CommercialConditionId",
"RewardValue",
"AlternateIds",
"AlternateIdValues",
"EstimatedDateArrival",
"MeasurementUnit",
"UnitMultiplier",
"InformationSource",
"ModalType"
],
"type": "object",
"properties": {
"Id": {
"type": "integer",
"format": "int32",
"description": "SKU ID."
},
"ProductId": {
"type": "integer",
"format": "int32",
"description": "ID of the related product."
},
"NameComplete": {
"type": "string",
"description": "Product Name and SKU Name concatenated."
},
"ComplementName": {
"type": "string",
"description": "Product Complement Name."
},
"ProductName": {
"type": "string",
"description": "Product Name."
},
"ProductDescription": {
"type": "string",
"description": "Product Description. HTML is allowed."
},
"ProductRefId": {
"type": "string",
"description": "Reference ID of the related product."
},
"TaxCode": {
"type": "string",
"description": "SKU Tax Code."
},
"SkuName": {
"type": "string",
"description": "SKU Name."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the SKU is active or not."
},
"IsTransported": {
"type": "boolean",
"description": "Deprecated field.",
"nullable": true,
"deprecated": true
},
"IsInventoried": {
"type": "boolean",
"description": "Deprecated field.",
"nullable": true,
"deprecated": true
},
"IsGiftCardRecharge": {
"type": "boolean",
"description": "Defines if the purchase will generate a reward."
},
"ImageUrl": {
"type": "string",
"description": "SKU image URL."
},
"DetailUrl": {
"type": "string",
"description": "Product URL."
},
"CSCIdentification": {
"type": "string",
"nullable": true,
"description": "SKU seller identification."
},
"BrandId": {
"type": "string",
"description": "Product brand ID."
},
"BrandName": {
"type": "string",
"description": "Product brand Name."
},
"Dimension": {
"$ref": "#/components/schemas/Dimension"
},
"RealDimension": {
"$ref": "#/components/schemas/RealDimension"
},
"ManufacturerCode": {
"type": "string",
"description": "Product Supplier ID."
},
"IsKit": {
"type": "boolean",
"description": "Defines whether the SKU is made up of one or more SKUs (part of a kit) (`true`) or not (`false`). Must be enabled if you are adding a kit. Once activated, this definition cannot be reverted."
},
"KitItems": {
"type": "array",
"items": {
"type": "string",
"description": "SKU ID."
},
"description": "Array with SKU IDs of bundle components."
},
"Services": {
"type": "array",
"items": {
"type": "string",
"description": "Service ID."
},
"description": "Array with Service IDs that are related to the SKU."
},
"Categories": {
"type": "array",
"items": {
"type": "string",
"description": "Category ID."
},
"description": "Array with Categories from the related product."
},
"Attachments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Attachment"
},
"description": "Array with Attachments ID that are related to the SKU."
},
"Collections": {
"type": "array",
"items": {
"type": "string",
"description": "Collection ID."
},
"description": "Array with Collection IDs that are related to the product."
},
"SkuSellers": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SkuSeller"
},
"description": "Array with SKU sellers data."
},
"SalesChannels": {
"type": "array",
"items": {
"type": "integer",
"format": "int32",
"description": "Trade policy ID."
},
"description": "Array with the ID of all the trade policies that are related to the product."
},
"Images": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Image"
},
"description": "Array with SKU images."
},
"SkuSpecifications": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SkuSpecification"
},
"description": "Array with related SKU specifications."
},
"ProductSpecifications": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProductSpecification"
},
"description": "Array with related product specifications."
},
"ProductClustersIds": {
"type": "string",
"description": "Product clusters IDs."
},
"ProductCategoryIds": {
"type": "string",
"description": "Category hierarchy with category IDs."
},
"ProductGlobalCategoryId": {
"type": "integer",
"nullable": true,
"description": "Global category ID."
},
"ProductCategories": {
"type": "object",
"description": "Object containing product categories. Structure: \"{CategoryID}\": \"{CategoryName}\".",
"additionalProperties": {
"type": "string",
"description": "Category ID.",
"additionalProperties": {
"type": "string",
"description": "Category name."
}
}
},
"CommercialConditionId": {
"type": "integer",
"format": "int32",
"description": "Commercial condition ID, used to define SKU specific promotions or installment rules. In case of no specific condition, use `1` (default value). This field does not accept `0`. Learn more at [Registering a commercial condition](https://help.vtex.com/tutorial/registering-a-commercial-condition--tutorials_445).",
"default": 1
},
"RewardValue": {
"type": "number",
"description": "Credit that the customer receives when finalizing an order that includes the SKU. By filling this field out with `1`, the customer receives credit on the site in the selected currency, e.g. U$ 1."
},
"AlternateIds": {
"$ref": "#/components/schemas/AlternateIds"
},
"AlternateIdValues": {
"type": "array",
"items": {
"type": "string",
"description": "Alternative SKU ID."
},
"description": "Array with values of alternative SKU IDs."
},
"EstimatedDateArrival": {
"type": "string",
"nullable": true,
"description": "To add the product as pre-sale, enter the product estimated arrival date in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format. You must take into consideration both the launch date and the freight calculation for the arrival date."
},
"MeasurementUnit": {
"type": "string",
"description": "Measurement unit. This field should only be used when it is necessary to convert the unit of measure for sale. For example, if a product is sold in boxes, but customers want to buy per square meter (m²). In common cases, use `\"un\"`."
},
"UnitMultiplier": {
"type": "number",
"description": "Multiple number of SKU. If the multiplier is 5.0000, the product can be added in multiple quantities of 5, 10, 15, 20, onward."
},
"InformationSource": {
"type": "string",
"description": "Information source.",
"nullable": true
},
"ModalType": {
"type": "string",
"nullable": true,
"description": "Links an unusual type of SKU that needs special transportation, such as meat, glass, or a mattress, to a carrier specialized in delivering it. This field should be filled in with the name of the modal (e.g. \"Chemicals\" or \"Refrigerated products\"). To learn more about this feature, read our articles [How the modal works](https://help.vtex.com/en/tutorial/how-does-the-modal-work--tutorials_125) and [Setting up modal for carriers](https://help.vtex.com/en/tutorial/configure-modal--3jhLqxuPhuiq24UoykCcqy)."
},
"KeyWords": {
"type": "string",
"nullable": true,
"description": "Keywords related to the product."
},
"ReleaseDate": {
"type": "string",
"nullable": true,
"description": "Release date of the product."
},
"ProductIsVisible": {
"type": "boolean",
"description": "Defines if the product is visible or not."
},
"ShowIfNotAvailable": {
"type": "boolean",
"description": "Defines if the product will be shown if it is not available."
},
"IsProductActive": {
"type": "boolean",
"description": "Defines if the product is active or not."
},
"ProductFinalScore": {
"type": "integer",
"description": "Product final score."
}
},
"example": {
"Id": 310118450,
"ProductId": 2,
"NameComplete": "Caixa de Areia Azul Petmate sku test",
"ComplementName": "",
"ProductName": "Caixa de Areia Azul Petmate",
"ProductDescription": "",
"ProductRefId": "",
"TaxCode": "",
"SkuName": "sku test",
"IsActive": true,
"IsTransported": true,
"IsInventoried": true,
"IsGiftCardRecharge": false,
"ImageUrl": "https://lojadobreno.vteximg.com.br/arquivos/ids/155451-55-55/caixa-areia-azul-petmate.jpg?v=637139451191670000",
"DetailUrl": "/caixa-de-areia-azul-petmate/p",
"CSCIdentification": null,
"BrandId": "2000005",
"BrandName": "Petmate",
"IsBrandActive": true,
"Dimension": {
"cubicweight": 0.2083,
"height": 10.0000,
"length": 10.0000,
"weight": 10.0000,
"width": 10.0000
},
"RealDimension": {
"realCubicWeight": 0.000,
"realHeight": 0.0,
"realLength": 0.0,
"realWeight": 0.0,
"realWidth": 0.0
},
"ManufacturerCode": "123",
"IsKit": false,
"KitItems": [],
"Services": [],
"Categories": [],
"CategoriesFullPath": [
"/3/15/",
"/3/",
"/1/"
],
"Attachments": [],
"Collections": [],
"SkuSellers": [
{
"SellerId": "1",
"StockKeepingUnitId": 310118450,
"SellerStockKeepingUnitId": "310118450",
"IsActive": true,
"FreightCommissionPercentage": 0.0,
"ProductCommissionPercentage": 0.0
}
],
"SalesChannels": [
1,
3
],
"Images": [
{
"ImageUrl": "https://lojadobreno.vteximg.com.br/arquivos/ids/155451/caixa-areia-azul-petmate.jpg?v=637139451191670000",
"ImageName": null,
"FileId": 155451
}
],
"Videos": [],
"SkuSpecifications": [],
"ProductSpecifications": [],
"ProductClustersIds": "151,158",
"PositionsInClusters": {
"151": 1,
"158": 2
},
"ProductClusterNames": {
"151": "asdfghj",
"158": "Coleção halloween"
},
"ProductClusterHighlights": {
"151": "asdfghj"
},
"ProductCategoryIds": "/3/15/",
"IsDirectCategoryActive": true,
"ProductGlobalCategoryId": 5000,
"ProductCategories": {
"15": "Caixa de Areia",
"3": "Higiene",
"1": "Alimentação"
},
"CommercialConditionId": 1,
"RewardValue": 0.0,
"AlternateIds": {
"RefId": "1"
},
"AlternateIdValues": [
"1"
],
"EstimatedDateArrival": null,
"MeasurementUnit": "un",
"UnitMultiplier": 1.0000,
"InformationSource": null,
"ModalType": null,
"KeyWords": "",
"ReleaseDate": "2020-01-06T00:00:00Z",
"ProductIsVisible": true,
"ShowIfNotAvailable": true,
"IsProductActive": true,
"ProductFinalScore": 0
}
},
"Dimension": {
"required": [
"cubicweight",
"height",
"length",
"weight",
"width"
],
"type": "object",
"description": "Object containing the SKU dimensions to be used on the shipping calculation.",
"properties": {
"cubicweight": {
"type": "number",
"description": "SKU [cubic weight](https://help.vtex.com/en/tutorial/understanding-the-cubic-weight-factor--tutorials_128)."
},
"height": {
"type": "number",
"description": "SKU height."
},
"length": {
"type": "number",
"description": "SKU length."
},
"weight": {
"type": "number",
"description": "SKU weight."
},
"width": {
"type": "number",
"description": "SKU width."
}
},
"example": {
"cubicweight": 81.6833,
"height": 65,
"length": 58,
"weight": 10000,
"width": 130
}
},
"RealDimension": {
"required": [
"realCubicWeight",
"realHeight",
"realLength",
"realWeight",
"realWidth"
],
"type": "object",
"description": "Object containing the real SKU dimensions, which appear in the product page.",
"properties": {
"realCubicWeight": {
"type": "number",
"description": "Real SKU [cubic weight](https://help.vtex.com/en/tutorial/understanding-the-cubic-weight-factor--tutorials_128)."
},
"realHeight": {
"type": "number",
"description": "Real SKU height."
},
"realLength": {
"type": "number",
"description": "Real SKU length."
},
"realWeight": {
"type": "number",
"description": "Real SKU weight."
},
"realWidth": {
"type": "number",
"description": "Real SKU width."
}
},
"example": {
"realCubicWeight": 274.1375,
"realHeight": 241,
"realLength": 65,
"realWeight": 9800,
"realWidth": 105
}
},
"Attachment": {
"required": [
"Id",
"Name",
"Keys",
"Fields",
"IsActive",
"IsRequired"
],
"type": "object",
"description": "Object containing information about SKU attachments.",
"properties": {
"Id": {
"type": "integer",
"format": "int32",
"description": "Attachment ID."
},
"Name": {
"type": "string",
"description": "Attachment Name."
},
"Keys": {
"type": "array",
"items": {
"type": "string"
},
"description": "Attachment Keys."
},
"Fields": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Field"
},
"description": "Array containing Attachment fields."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the Attachment is active or not."
},
"IsRequired": {
"type": "boolean",
"description": "Defines if the Attachment is required or not."
}
},
"example": {
"Id": 3,
"Name": "Mensagem",
"Keys": [
"nome;20",
"foto;40"
],
"Fields": [
{
"FieldName": "nome",
"MaxCaracters": "20",
"DomainValues": "Adalberto,Pedro,João"
},
{
"FieldName": "foto",
"MaxCaracters": "40",
"DomainValues": null
}
],
"IsActive": true,
"IsRequired": false
}
},
"Field": {
"required": [
"FieldName",
"MaxCaracters",
"DomainValues"
],
"type": "object",
"properties": {
"FieldName": {
"type": "string",
"description": "Attachment field name."
},
"MaxCaracters": {
"type": "string",
"description": "Maximum number of characters accepted in the attachment field."
},
"DomainValues": {
"type": "string",
"nullable": true,
"description": "Allowed key values."
}
},
"example": {
"FieldName": "nome",
"MaxCaracters": "20",
"DomainValues": "Adalberto,Pedro,João"
}
},
"SkuSeller": {
"required": [
"SellerId",
"StockKeepingUnitId",
"SellerStockKeepingUnitId",
"IsActive",
"FreightCommissionPercentage",
"ProductCommissionPercentage"
],
"type": "object",
"description": "Object containing related SKU sellers data.",
"properties": {
"SellerId": {
"type": "string",
"description": "SKU seller ID. This is the ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID."
},
"StockKeepingUnitId": {
"type": "integer",
"format": "int32",
"description": "SKU ID."
},
"SellerStockKeepingUnitId": {
"type": "string",
"description": "SKU ID for the SKU seller."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the SKU is active."
},
"FreightCommissionPercentage": {
"type": "number",
"description": "Registered value for Seller Freight Commission."
},
"ProductCommissionPercentage": {
"type": "number",
"description": "Registered value for Seller product Commission."
}
},
"example": {
"SellerId": "1",
"StockKeepingUnitId": 2001773,
"SellerStockKeepingUnitId": "2001773",
"IsActive": true,
"FreightCommissionPercentage": 0,
"ProductCommissionPercentage": 0
}
},
"Image": {
"required": [
"ImageUrl",
"ImageName",
"FileId"
],
"type": "object",
"description": "Object containing SKU images details.",
"properties": {
"ImageUrl": {
"type": "string",
"description": "Image URL."
},
"ImageName": {
"type": "string",
"description": "Image label.",
"nullable": true
},
"FileId": {
"type": "integer",
"format": "int32",
"description": "SKU image ID."
}
},
"example": {
"ImageUrl": "http://ambienteqa.vteximg.com.br/arquivos/ids/168952/7508800GG.jpg",
"ImageName": "",
"FileId": 168952
}
},
"SkuSpecification": {
"required": [
"FieldId",
"FieldName",
"FieldValueIds",
"FieldValues"
],
"type": "object",
"description": "Object containing related SKU specifications.",
"properties": {
"FieldId": {
"type": "integer",
"format": "int32",
"description": "Specification field ID."
},
"FieldName": {
"type": "string",
"description": "Specification field Name."
},
"FieldValueIds": {
"type": "array",
"items": {
"type": "integer",
"format": "int32",
"description": "Specification value ID."
},
"description": "Array with related specification values IDs."
},
"FieldValues": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array with related specification values."
}
},
"example": {
"FieldId": 102,
"FieldName": "Cor",
"FieldValueIds": [
266
],
"FieldValues": [
"Padrão"
]
}
},
"ProductSpecification": {
"required": [
"FieldId",
"FieldName",
"FieldValueIds",
"FieldValues"
],
"type": "object",
"properties": {
"FieldId": {
"type": "integer",
"format": "int32",
"description": "Specification field ID."
},
"FieldName": {
"type": "string",
"description": "Specification name. Limited to 100 characters."
},
"FieldValueIds": {
"type": "array",
"items": {
"type": "integer",
"format": "int32",
"description": "Specification value ID."
},
"description": "Array with related specification values IDs."
},
"FieldValues": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array with related specification values."
}
},
"example": {
"FieldId": 7,
"FieldName": "Faixa Etária",
"FieldValueIds": [
58,
56,
55,
52
],
"FieldValues": [
"5 a 6 anos",
"7 a 8 anos",
"9 a 10 anos",
"Acima de 10 anos"
]
}
},
"AlternateIds": {
"type": "object",
"description": "Array with alternate SKU IDs, such as EAN and `RefId`.",
"properties": {
"Ean": {
"type": "string",
"description": "SKU EAN."
},
"RefId": {
"type": "string",
"description": "SKU reference ID."
}
},
"example": {
"Ean": "8781",
"RefId": "878181"
}
},
"GetSKUAltID": {
"required": [
"Id",
"ProductId",
"NameComplete",
"ProductName",
"ProductDescription",
"SkuName",
"IsActive",
"IsTransported",
"IsInventoried",
"IsGiftCardRecharge",
"ImageUrl",
"DetailUrl",
"CSCIdentification",
"BrandId",
"BrandName",
"Dimension",
"RealDimension",
"ManufacturerCode",
"IsKit",
"KitItems",
"Services",
"Categories",
"Attachments",
"Collections",
"SkuSellers",
"SalesChannels",
"Images",
"SkuSpecifications",
"ProductSpecifications",
"ProductClustersIds",
"ProductCategoryIds",
"ProductGlobalCategoryId",
"ProductCategories",
"CommercialConditionId",
"RewardValue",
"AlternateIds",
"AlternateIdValues",
"EstimatedDateArrival",
"MeasurementUnit",
"UnitMultiplier",
"InformationSource",
"ModalType"
],
"type": "object",
"properties": {
"Id": {
"type": "integer",
"format": "int32",
"description": "SKU ID."
},
"ProductId": {
"type": "integer",
"format": "int32",
"description": "Product ID."
},
"NameComplete": {
"type": "string",
"description": "Product name and SKU name combined."
},
"ComplementName": {
"type": "string",
"description": "Product complement name."
},
"ProductName": {
"type": "string",
"description": "Product name."
},
"ProductDescription": {
"type": "string",
"description": "Product description. HTML is allowed."
},
"ProductRefId": {
"type": "string",
"description": "Product reference ID."
},
"TaxCode": {
"type": "string",
"description": "SKU tax code."
},
"SkuName": {
"type": "string",
"description": "SKU name."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the SKU is active or not."
},
"IsTransported": {
"type": "boolean",
"deprecated": true,
"description": "Deprecated field."
},
"IsInventoried": {
"type": "boolean",
"deprecated": true,
"description": "Deprecated field."
},
"IsGiftCardRecharge": {
"type": "boolean",
"description": "Defines if the purchase of the SKU will generate reward value for the customer."
},
"ImageUrl": {
"type": "string",
"description": "SKU image URL."
},
"DetailUrl": {
"type": "string",
"description": "Product slug."
},
"CSCIdentification": {
"type": "string",
"nullable": true,
"description": "SKU seller identification."
},
"BrandId": {
"type": "string",
"description": "Brand ID."
},
"BrandName": {
"type": "string",
"description": "Brand name."
},
"Dimension": {
"$ref": "#/components/schemas/Dimension"
},
"RealDimension": {
"$ref": "#/components/schemas/RealDimension"
},
"ManufacturerCode": {
"type": "string",
"description": "Identifier provided by the manufacturers to identify their product. This field should be filled in if the product has a specific manufacturer's code."
},
"IsKit": {
"type": "boolean",
"description": "Defines whether the SKU is made up of one or more SKUs (part of a kit) (`true`) or not (`false`). Must be enabled if you are adding a kit. Once activated, this definition cannot be reverted."
},
"KitItems": {
"type": "array",
"description": "Array with SKU IDs of bundle components.",
"items": {
"type": "string",
"description": "SKU ID of each bundle component."
}
},
"Services": {
"type": "array",
"description": "Array with service IDs that are related to the SKU.",
"items": {
"type": "string",
"description": "Service IDs of each service related to the SKU."
}
},
"Categories": {
"type": "array",
"description": "Categories of the related product.",
"items": {
"type": "string",
"description": "Category ID."
}
},
"CategoriesFullPath": {
"type": "array",
"description": "Path of categories of the related product.",
"items": {
"type": "string",
"description": "Path composed by category IDs separated by `/`."
}
},
"Attachments": {
"type": "array",
"description": "Array with attachment IDs that are related to the product.",
"items": {
"$ref": "#/components/schemas/Attachment"
}
},
"Collections": {
"type": "array",
"description": "Array with collections IDs that are related to the product.",
"items": {
"type": "string",
"description": "Collection ID."
}
},
"SkuSellers": {
"type": "array",
"description": "Array with related sellers data.",
"items": {
"$ref": "#/components/schemas/SkuSeller"
}
},
"SalesChannels": {
"type": "array",
"description": "Array of trade policy IDs.",
"items": {
"type": "integer",
"format": "int32",
"description": "Trade policy ID."
}
},
"Images": {
"type": "array",
"description": "Array of objects with SKU image details.",
"items": {
"$ref": "#/components/schemas/Image"
}
},
"SkuSpecifications": {
"type": "array",
"description": "Array with related SKU specifications.",
"items": {
"$ref": "#/components/schemas/SkuSpecification"
}
},
"ProductSpecifications": {
"type": "array",
"description": "Array with related product specifications.",
"items": {
"$ref": "#/components/schemas/ProductSpecification"
}
},
"ProductClustersIds": {
"type": "string",
"description": "Product cluster IDs separated by comma (`,`)."
},
"PositionsInClusters": {
"type": "object",
"description": "Product clusters position in each cluster. Structure: \"{Product cluster ID}\": {Position}.\n\n`{Product cluster ID}` is a string, while `{Position}` is an integer.",
"additionalProperties": {
"type": "integer",
"description": "Product cluster ID.",
"additionalProperties": {
"type": "integer",
"description": "Position."
}
}
},
"ProductClusterNames": {
"type": "object",
"description": "Product clusters names. Structure: \"{Product cluster ID}\": \"{Product cluster name}\". Both the key and the value are strings.",
"additionalProperties": {
"type": "string",
"description": "Product cluster ID.",
"additionalProperties": {
"type": "string",
"description": "Product cluster name."
}
}
},
"ProductClusterHighlights": {
"type": "object",
"description": "Product clusters highlights. Structure: \"{Product cluster ID}\": \"{Product cluster name}\". Both the key and the value are strings.",
"additionalProperties": {
"type": "string",
"description": "Product cluster ID.",
"additionalProperties": {
"type": "string",
"description": "Product cluster highlight."
}
}
},
"ProductCategoryIds": {
"type": "string",
"description": "Category path composed by category IDs separated by `/`."
},
"IsDirectCategoryActive": {
"type": "boolean",
"description": "Indicates if the direct product category is active or not."
},
"ProductGlobalCategoryId": {
"type": "integer",
"nullable": true,
"description": "Product global category ID."
},
"ProductCategories": {
"type": "object",
"description": "Object containing product categories. Structure: \"{CategoryID}\": \"{CategoryName}\". Both the key and the value are strings.",
"additionalProperties": {
"type": "string",
"description": "Category ID.",
"additionalProperties": {
"type": "string",
"description": "Category name."
}
}
},
"CommercialConditionId": {
"type": "integer",
"format": "int32",
"description": "Commercial condition ID, used to define SKU specific promotions or installment rules. In case of no specific condition, use `1` (default value). This field does not accept `0`. Learn more at [Registering a commercial condition](https://help.vtex.com/tutorial/registering-a-commercial-condition--tutorials_445).",
"default": 1
},
"RewardValue": {
"type": "number",
"description": "Credit that the customer receives when finalizing an order that includes the SKU. By filling this field out with `1`, the customer receives credit on the site in the selected currency, e.g. U$ 1."
},
"AlternateIds": {
"$ref": "#/components/schemas/AlternateIds"
},
"AlternateIdValues": {
"type": "array",
"description": "Array with values of alternative SKU IDs.",
"items": {
"type": "string",
"description": "Alternative SKU ID."
}
},
"EstimatedDateArrival": {
"type": "string",
"nullable": true,
"description": "SKU estimated arrival date in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format, when the product is on pre-sale. You must take into consideration both the launch date and the freight calculation for the arrival date."
},
"MeasurementUnit": {
"type": "string",
"description": "Measurement unit. This field should only be used when it is necessary to convert the unit of measure for sale. For example, if a product is sold in boxes, but customers want to buy per square meter (m²). In common cases, use `\"un\"`."
},
"UnitMultiplier": {
"type": "number",
"description": "Multiple number of SKU. If the multiplier is 5.0000, the product can be added in multiple quantities of 5, 10, 15, 20, onward."
},
"InformationSource": {
"type": "string",
"nullable": true,
"description": "Information source."
},
"ModalType": {
"type": "string",
"nullable": true,
"description": "Links an unusual type of SKU that needs special transportation, such as meat, glass, or a mattress, to a carrier specialized in delivering it. This field should be filled in with the name of the modal (e.g. \"Chemicals\" or \"Refrigerated products\"). To learn more about this feature, read our articles [How the modal works](https://help.vtex.com/en/tutorial/how-does-the-modal-work--tutorials_125) and [Setting up modal for carriers](https://help.vtex.com/en/tutorial/configure-modal--3jhLqxuPhuiq24UoykCcqy)."
},
"KeyWords": {
"type": "string",
"nullable": true,
"description": "Keywords related to the product."
},
"ReleaseDate": {
"type": "string",
"nullable": true,
"description": "Release date of the product."
},
"ProductIsVisible": {
"type": "boolean",
"description": "Defines if the product is visible or not."
},
"ShowIfNotAvailable": {
"type": "boolean",
"description": "Defines if the product will be shown if it is not available."
},
"IsProductActive": {
"type": "boolean",
"description": "Defines if the product is active or not."
},
"ProductFinalScore": {
"type": "integer",
"description": "Product final score."
}
},
"example": {
"Id": 310118450,
"ProductId": 2,
"NameComplete": "Caixa de Areia Azul Petmate sku test",
"ComplementName": "",
"ProductName": "Caixa de Areia Azul Petmate",
"ProductDescription": "",
"ProductRefId": "",
"TaxCode": "",
"SkuName": "sku test",
"IsActive": true,
"IsTransported": true,
"IsInventoried": true,
"IsGiftCardRecharge": false,
"ImageUrl": "https://lojadobreno.vteximg.com.br/arquivos/ids/155451-55-55/caixa-areia-azul-petmate.jpg?v=637139451191670000",
"DetailUrl": "/caixa-de-areia-azul-petmate/p",
"CSCIdentification": null,
"BrandId": "2000005",
"BrandName": "Petmate",
"IsBrandActive": true,
"Dimension": {
"cubicweight": 0.2083,
"height": 10.0000,
"length": 10.0000,
"weight": 10.0000,
"width": 10.0000
},
"RealDimension": {
"realCubicWeight": 0.000,
"realHeight": 0.0,
"realLength": 0.0,
"realWeight": 0.0,
"realWidth": 0.0
},
"ManufacturerCode": "123",
"IsKit": false,
"KitItems": [],
"Services": [],
"Categories": [],
"CategoriesFullPath": [
"/3/15/",
"/3/",
"/1/"
],
"Attachments": [],
"Collections": [],
"SkuSellers": [
{
"SellerId": "1",
"StockKeepingUnitId": 310118450,
"SellerStockKeepingUnitId": "310118450",
"IsActive": true,
"FreightCommissionPercentage": 0.0,
"ProductCommissionPercentage": 0.0
}
],
"SalesChannels": [
1,
3
],
"Images": [
{
"ImageUrl": "https://lojadobreno.vteximg.com.br/arquivos/ids/155451/caixa-areia-azul-petmate.jpg?v=637139451191670000",
"ImageName": null,
"FileId": 155451
}
],
"Videos": [],
"SkuSpecifications": [],
"ProductSpecifications": [],
"ProductClustersIds": "151,158",
"PositionsInClusters": {
"151": 1,
"158": 2
},
"ProductClusterNames": {
"151": "asdfghj",
"158": "Coleção halloween"
},
"ProductClusterHighlights": {
"151": "asdfghj"
},
"ProductCategoryIds": "/3/15/",
"IsDirectCategoryActive": true,
"ProductGlobalCategoryId": 5000,
"ProductCategories": {
"15": "Caixa de Areia",
"3": "Higiene",
"1": "Alimentação"
},
"CommercialConditionId": 1,
"RewardValue": 0.0,
"AlternateIds": {
"RefId": "1"
},
"AlternateIdValues": [
"1"
],
"EstimatedDateArrival": null,
"MeasurementUnit": "un",
"UnitMultiplier": 1.0000,
"InformationSource": null,
"ModalType": null,
"KeyWords": "",
"ReleaseDate": "2020-01-06T00:00:00Z",
"ProductIsVisible": true,
"ShowIfNotAvailable": true,
"IsProductActive": true,
"ProductFinalScore": 0
}
},
"SkulistbyProductId": {
"type": "object",
"properties": {
"IsPersisted": {
"type": "boolean",
"description": "Defines if the SKU is persisted."
},
"IsRemoved": {
"type": "boolean",
"deprecated": true,
"description": "Defines if the SKU is removed."
},
"Id": {
"type": "integer",
"format": "int32",
"description": "SKU ID."
},
"ProductId": {
"type": "integer",
"format": "int32",
"description": "Product ID."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the SKU is active or not."
},
"Name": {
"type": "string",
"description": "SKU name."
},
"Height": {
"type": "number",
"description": "SKU height."
},
"RealHeight": {
"type": "number",
"nullable": true,
"description": "Real SKU height."
},
"Width": {
"type": "number",
"description": "SKU width."
},
"RealWidth": {
"type": "number",
"nullable": true,
"description": "Real SKU width."
},
"Length": {
"type": "number",
"description": "SKU length."
},
"RealLength": {
"type": "number",
"nullable": true,
"description": "Real SKU length."
},
"WeightKg": {
"type": "number",
"nullable": true,
"description": "Weight of the SKU in the measurement [configured in the store](https://help.vtex.com/en/tutorial/filling-in-system-settings--tutorials_269), which by default is in grams."
},
"RealWeightKg": {
"type": "number",
"nullable": true,
"description": "Real weight of the SKU in the measurement unit [configured in the store](https://help.vtex.com/en/tutorial/filling-in-system-settings--tutorials_269), which by default is in grams."
},
"ModalId": {
"type": "integer",
"format": "int32",
"description": "Delivery method (modal type) ID."
},
"RefId": {
"type": "string",
"description": "Product reference ID."
},
"CubicWeight": {
"type": "number",
"description": "[Cubic weight](https://help.vtex.com/en/tutorial/understanding-the-cubic-weight-factor--tutorials_128)."
},
"IsKit": {
"type": "boolean",
"description": "Defines whether the SKU is made up of one or more SKUs (part of a kit) (`true`) or not (`false`). Must be enabled if you are adding a kit. Once activated, this definition cannot be reverted."
},
"IsDynamicKit": {
"type": "string",
"nullable": true,
"deprecated": true,
"description": "Deprecated field."
},
"InternalNote": {
"type": "string",
"nullable": true,
"description": "Internal note."
},
"DateUpdated": {
"type": "string",
"description": "Date when the product was updated for the most recent time."
},
"RewardValue": {
"type": "number",
"nullable": true,
"description": "Credit that the customer receives when finalizing an order that includes the SKU. By filling this field out with `1`, the customer receives credit on the site in the selected currency, e.g. U$ 1."
},
"CommercialConditionId": {
"type": "integer",
"format": "int32",
"description": "Commercial condition ID, used to define SKU specific promotions or installment rules. In case of no specific condition, use `1` (default value). This field does not accept `0`. Learn more at [Registering a commercial condition](https://help.vtex.com/tutorial/registering-a-commercial-condition--tutorials_445).",
"default": 1
},
"EstimatedDateArrival": {
"type": "string",
"nullable": true,
"description": "SKU estimated arrival date in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format, when the product is on pre-sale. You must take into consideration both the launch date and the freight calculation for the arrival date."
},
"FlagKitItensSellApart": {
"type": "boolean",
"description": "Defines if the SKU bundle items can be sold separately."
},
"ManufacturerCode": {
"type": "string",
"description": "Identifier provided by the manufacturers to identify their product. This field should be filled in if the product has a specific manufacturer's code."
},
"ReferenceStockKeepingUnitId": {
"type": "string",
"nullable": true,
"description": "SKU reference ID."
},
"Position": {
"type": "integer",
"format": "int32",
"description": "SKU position."
},
"ActivateIfPossible": {
"type": "boolean",
"description": "When set to `true`, this attribute will automatically update the SKU as active once associated with an image or an active component."
},
"MeasurementUnit": {
"type": "string",
"description": "Measurement unit. This field should only be used when it is necessary to convert the unit of measure for sale. For example, if a product is sold in boxes, but customers want to buy per square meter (m²). In common cases, use `\"un\"`."
},
"UnitMultiplier": {
"type": "number",
"description": "Multiple number of SKU. If the multiplier is 5.0000, the product can be added in multiple quantities of 5, 10, 15, 20, onward."
},
"IsInventoried": {
"type": "boolean",
"nullable": true,
"deprecated": true,
"description": "Deprecated field."
},
"IsTransported": {
"type": "boolean",
"nullable": true,
"deprecated": true,
"description": "Deprecated field."
},
"IsGiftCardRecharge": {
"type": "boolean",
"nullable": true,
"description": "Defines if the purchase of the SKU will generate reward value for the customer."
},
"ModalType": {
"type": "string",
"nullable": true,
"description": "Links an unusual type of SKU that needs special transportation, such as meat, glass, or a mattress, to a carrier specialized in delivering it. This field should be filled in with the name of the modal (e.g. \"Chemicals\" or \"Refrigerated products\"). To learn more about this feature, read our articles [How the modal works](https://help.vtex.com/en/tutorial/how-does-the-modal-work--tutorials_125) and [Setting up modal for carriers](https://help.vtex.com/en/tutorial/configure-modal--3jhLqxuPhuiq24UoykCcqy)."
},
"isKitOptimized": {
"type": "boolean",
"description": "Defines if the SKU is an optimized bundle."
}
},
"example": {
"IsPersisted": true,
"Id": 1,
"ProductId": 1,
"IsActive": true,
"Name": "Ração Royal Canin Feline Urinary 500g",
"Height": 6.5000,
"RealHeight": 2.2000,
"Width": 14.0000,
"RealWidth": 3.3000,
"Length": 24.0000,
"RealLength": 4.4000,
"WeightKg": 550.0000,
"RealWeightKg": 1.1000,
"ModalId": 1,
"RefId": "0001",
"CubicWeight": 1.0000,
"IsKit": false,
"InternalNote": null,
"DateUpdated": "2021-10-29T18:25:00",
"RewardValue": null,
"CommercialConditionId": 1,
"EstimatedDateArrival": null,
"FlagKitItensSellApart": false,
"ManufacturerCode": "",
"ReferenceStockKeepingUnitId": null,
"Position": 1,
"ActivateIfPossible": true,
"MeasurementUnit": "un",
"UnitMultiplier": 300.0000,
"IsInventoried": true,
"IsTransported": true,
"IsGiftCardRecharge": false,
"ModalType": null,
"isKitOptimized": false
}
},
"CreateSellerRequest": {
"type": "object",
"required": [
"SellerId",
"Name",
"Email",
"Description",
"ExchangeReturnPolicy",
"DeliveryPolicy",
"UseHybridPaymentOptions",
"UserName",
"Password",
"SecutityPrivacyPolicy",
"CNPJ",
"CSCIdentification",
"ArchiveId",
"UrlLogo",
"ProductCommissionPercentage",
"FreightCommissionPercentage",
"FulfillmentEndpoint",
"CatalogSystemEndpoint",
"IsActive",
"FulfillmentSellerId",
"SellerType",
"IsBetterScope"
],
"properties": {
"SellerId": {
"type": "string",
"description": "Code used to identify the seller. It is assigned by the marketplace. We recommend filling it in with the seller's account name.",
"example": "pedrostore"
},
"Name": {
"type": "string",
"description": "Name of the account in the seller's environment. You can find it on **Account settings > Account > Account Name**). Applicable only if the seller uses their own payment method.",
"example": "My pedrostore"
},
"Email": {
"type": "string",
"description": "Email of the admin responsible for the seller.",
"example": "breno@breno.com"
},
"Description": {
"type": "string",
"description": "Text describing the seller with a marketing tone. You can display this text in the marketplace window display by [customizing the CMS](https://help.vtex.com/en/tutorial/list-of-controls-for-templates--tutorials_563).",
"example": "Brief description"
},
"ExchangeReturnPolicy": {
"type": "string",
"description": "Text describing the exchange and return policy previously agreed between the marketplace and the seller.",
"example": "Exchange return policy text"
},
"DeliveryPolicy": {
"type": "string",
"description": "Text describing the delivery policy previously agreed between the marketplace and the seller.",
"example": "Delivery policy text"
},
"UseHybridPaymentOptions": {
"type": "boolean",
"description": "Allows customers to use gift cards from the seller to buy their products on the marketplace. It identifies purchases made with a gift card so that only the final price (with discounts applied) is paid to the seller.",
"example": false
},
"UserName": {
"type": "string",
"description": "Seller username.",
"example": "myseller"
},
"Password": {
"type": "string",
"description": "Seller password.",
"example": "passoword"
},
"SecutityPrivacyPolicy": {
"type": "string",
"description": "Text describing the security policy previously agreed between the marketplace and the seller.",
"example": "Secutity privacy policy text"
},
"CNPJ": {
"type": "string",
"description": "Company registration number.",
"example": "12035072751"
},
"CSCIdentification": {
"type": "string",
"description": "CSC identification.",
"example": "pedrostore"
},
"ArchiveId": {
"type": "integer",
"description": "Seller archive ID.",
"example": 1
},
"UrlLogo": {
"type": "string",
"description": "Seller URL logo.",
"example": "/myseller"
},
"ProductCommissionPercentage": {
"type": "number",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`.",
"example": 0.0
},
"FreightCommissionPercentage": {
"type": "number",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`.",
"example": 0.0
},
"CategoryCommissionPercentage": {
"type": "string",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`.",
"example": "[{\"CategoryId\":14,\"ProductCommission\":15.0,\"FreightCommission\":0.0}]"
},
"FulfillmentEndpoint": {
"type": "string",
"description": "URL of the endpoint for fulfillment of seller's orders, which the marketplace will use to communicate with the seller. This field applies to all sellers, regardless of their type. However, for `VTEX Stores`, you don't need to fill it in because the system will do that automatically. You can edit this field once the seller has been successfully added.",
"example": "http://pedrostore.vtexcommercestable.com.br/api/fulfillment?affiliateid=LDB&sc=1"
},
"CatalogSystemEndpoint": {
"type": "string",
"description": "URL of the endpoint of the seller's catalog. This field will only be displayed if the seller type is VTEX Store. The field format will be as follows: `http://{sellerName}.vtexcommercestable.com.br/api/catalog_system/`.",
"example": "http://pedrostore.vtexcommercestable.com.br/api/catalog_system/"
},
"IsActive": {
"type": "boolean",
"description": "If the selle is active (`true`) or not (`false`).",
"example": true
},
"MerchantName": {
"type": "string",
"description": "Name of the marketplace, used to guide payments. This field should be nulled if the marketplace is responsible for processing payments. Check out our [Split Payment](https://help.vtex.com/en/tutorial/split-payment--6k5JidhYRUxileNolY2VLx) article to know more.",
"example": "pedrostore"
},
"FulfillmentSellerId": {
"type": "integer",
"description": "Identification code of the seller responsible for fulfilling the order. This is an optional field used when a seller sells SKUs from another seller. If the seller sells their own SKUs, it must be left blank.",
"example": 1
},
"SellerType": {
"type": "integer",
"description": "Seller type.",
"example": 1
},
"IsBetterScope": {
"type": "boolean",
"description": "Indicates whether it is a [comprehensive seller](https://help.vtex.com/en/tutorial/comprehensive-seller--5Qn4O2GpjUIzWTPpvLUfkI).",
"example": false
},
"TrustPolicy": {
"type": "string",
"description": "Seller trust policy. The default value is `'Default'`, but if your store is a B2B marketplace and you want to share the customers'emails with the sellers you need to set this field as `'AllowEmailSharing'`.",
"example": "Default"
}
}
},
"UpdateSellerRequest": {
"type": "object",
"required": [
"SellerId",
"Name",
"Email",
"Description",
"ExchangeReturnPolicy",
"DeliveryPolicy",
"UseHybridPaymentOptions",
"UserName",
"Password",
"SecutityPrivacyPolicy",
"CNPJ",
"CSCIdentification",
"ArchiveId",
"UrlLogo",
"ProductCommissionPercentage",
"FreightCommissionPercentage",
"FulfillmentEndpoint",
"CatalogSystemEndpoint",
"IsActive",
"FulfillmentSellerId",
"SellerType",
"IsBetterScope"
],
"properties": {
"SellerId": {
"type": "string",
"description": "ID that identifies the seller in the marketplace. It can be the same as the seller name or a unique number. Check the **Sellers management** section in the Admin to get the correct ID.",
"example": "pedrostore"
},
"Name": {
"type": "string",
"description": "Name of the account in the seller's environment. You can find it on **Account settings > Account > Account Name**). Applicable only if the seller uses their own payment method.",
"example": "My pedrostore"
},
"Email": {
"type": "string",
"description": "Email of the admin responsible for the seller.",
"example": "breno@breno.com"
},
"Description": {
"type": "string",
"description": "Text describing the seller with a marketing tone. You can display this text in the marketplace window display by [customizing the CMS](https://help.vtex.com/en/tutorial/list-of-controls-for-templates--tutorials_563).",
"example": "Brief description"
},
"ExchangeReturnPolicy": {
"type": "string",
"description": "Text describing the exchange and return policy previously agreed between the marketplace and the seller.",
"example": "Exchange return policy text"
},
"DeliveryPolicy": {
"type": "string",
"description": "Text describing the delivery policy previously agreed between the marketplace and the seller.",
"example": "Delivery policy text"
},
"UseHybridPaymentOptions": {
"type": "boolean",
"description": "Allows customers to use gift cards from the seller to buy their products on the marketplace. It identifies purchases made with a gift card so that only the final price (with discounts applied) is paid to the seller.",
"example": false
},
"UserName": {
"type": "string",
"description": "Seller username.",
"example": "myseller"
},
"Password": {
"type": "string",
"description": "Seller password.",
"example": "passoword"
},
"SecutityPrivacyPolicy": {
"type": "string",
"description": "Text describing the security policy previously agreed between the marketplace and the seller.",
"example": "Secutity privacy policy text"
},
"CNPJ": {
"type": "string",
"description": "Company registration number.",
"example": "12035072751"
},
"CSCIdentification": {
"type": "string",
"description": "CSC identification.",
"example": "pedrostore"
},
"ArchiveId": {
"type": "integer",
"description": "Seller archive ID.",
"example": 1
},
"UrlLogo": {
"type": "string",
"description": "Seller URL logo.",
"example": "/myseller"
},
"ProductCommissionPercentage": {
"type": "number",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`.",
"example": 0.0
},
"FreightCommissionPercentage": {
"type": "number",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`.",
"example": 0.0
},
"CategoryCommissionPercentage": {
"type": "string",
"description": "The percentage that must be filled in as agreed between the marketplace and the seller. If there is no such commission, please fill in the field with the value: `0.00`.",
"example": "[{\"CategoryId\":14,\"ProductCommission\":15.0,\"FreightCommission\":0.0}]"
},
"FulfillmentEndpoint": {
"type": "string",
"description": "URL of the endpoint for fulfillment of seller's orders, which the marketplace will use to communicate with the seller. This field applies to all sellers, regardless of their type. However, for `VTEX Stores`, you don't need to fill it in because the system will do that automatically. You can edit this field once the seller has been successfully added.",
"example": "http://pedrostore.vtexcommercestable.com.br/api/fulfillment?affiliateid=LDB&sc=1"
},
"CatalogSystemEndpoint": {
"type": "string",
"description": "URL of the endpoint of the seller's catalog. This field will only be displayed if the seller type is VTEX Store. The field format will be as follows: `http://{sellerName}.vtexcommercestable.com.br/api/catalog_system/`.",
"example": "http://pedrostore.vtexcommercestable.com.br/api/catalog_system/"
},
"IsActive": {
"type": "boolean",
"description": "If the selle is active (`true`) or not (`false`).",
"example": true
},
"MerchantName": {
"type": "string",
"description": "Name of the marketplace, used to guide payments. This field should be nulled if the marketplace is responsible for processing payments. Check out our [Split Payment](https://help.vtex.com/en/tutorial/split-payment--6k5JidhYRUxileNolY2VLx) article to know more.",
"example": "pedrostore"
},
"FulfillmentSellerId": {
"type": "integer",
"description": "Identification code of the seller responsible for fulfilling the order. This is an optional field used when a seller sells SKUs from another seller. If the seller sells their own SKUs, it must be left blank.",
"example": 1
},
"SellerType": {
"type": "integer",
"description": "Seller type.",
"example": 1
},
"IsBetterScope": {
"type": "boolean",
"description": "Indicates whether it is a [comprehensive seller](https://help.vtex.com/en/tutorial/comprehensive-seller--5Qn4O2GpjUIzWTPpvLUfkI).",
"example": false
},
"TrustPolicy": {
"type": "string",
"description": "Seller trust policy. The default value is `'Default'`, but if your store is a B2B marketplace and you want to share the customers'emails with the sellers you need to set this field as `'AllowEmailSharing'`.",
"example": "Default"
}
}
},
"CategorySpecification": {
"required": [
"Name",
"CategoryId",
"FieldId",
"IsActive",
"IsStockKeepingUnit"
],
"type": "array",
"description": "Array of objects.",
"items": {
"type": "object",
"description": "Object containing specification information.",
"properties": {
"Name": {
"type": "string",
"description": "Specification name. Limited to 100 characters.",
"example": "Composition"
},
"CategoryId": {
"type": "integer",
"description": "Category ID.",
"example": 1
},
"FieldId": {
"type": "integer",
"description": "Specification field ID.",
"example": 1
},
"IsActive": {
"type": "boolean",
"description": "Defines if the specification is active.",
"example": true
},
"IsStockKeepingUnit": {
"type": "boolean",
"description": "Defines if it is an SKU specification.",
"example": true
}
}
},
"example": [
{
"Name": "Specification A",
"CategoryId": 1,
"FieldId": 33,
"IsActive": true,
"IsStockKeepingUnit": false
},
{
"Name": "Specification B",
"CategoryId": 1,
"FieldId": 34,
"IsActive": true,
"IsStockKeepingUnit": false
},
{
"Name": "Specification C",
"CategoryId": 1,
"FieldId": 35,
"IsActive": false,
"IsStockKeepingUnit": false
}
]
},
"GetSpecFieldValue": {
"required": [
"FieldValueId",
"Value",
"IsActive",
"Position"
],
"type": "object",
"properties": {
"FieldValueId": {
"type": "integer",
"format": "int32",
"description": "Specification field value ID."
},
"Value": {
"type": "string",
"description": "Specification field value."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the specification field is active (`true`) or inactive (`false`)."
},
"Position": {
"type": "integer",
"format": "int32",
"description": "Specification field value position."
}
},
"example": {
"FieldValueId": 52,
"Value": "0 a 6 meses",
"IsActive": true,
"Position": 1
}
},
"SpecificationsInsertFieldRequest": {
"required": [
"Name",
"CategoryId",
"IsActive",
"FieldId",
"IsRequired",
"FieldTypeId",
"FieldValueId",
"Description",
"IsStockKeepingUnit",
"IsFilter",
"IsOnProductDetails",
"Position",
"IsWizard",
"IsTopMenuLinkActive",
"IsSideMenuLinkActive",
"DefaultValue",
"FieldGroupId",
"FieldGroupName"
],
"type": "object",
"properties": {
"Name": {
"type": "string",
"description": "Specification field name. Limited to 100 characters."
},
"CategoryId": {
"type": "integer",
"nullable": true,
"description": "Category ID."
},
"FieldId": {
"type": "integer",
"nullable": true,
"description": "Specification field ID."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the specification field is active. The default value is `true`."
},
"IsRequired": {
"type": "boolean",
"description": "Makes the specification field mandatory (`true`) or optional (`false`)."
},
"FieldTypeId": {
"type": "integer",
"format": "int32",
"description": "Specification field type ID."
},
"FieldValueId": {
"type": "integer",
"nullable": true,
"description": "Specification field value ID."
},
"Description": {
"type": "string",
"nullable": true,
"description": "Specification field description."
},
"IsStockKeepingUnit": {
"type": "boolean",
"description": "If `true`, it will be added as a SKU specification. If `false`, it will be added as a product specification field."
},
"IsFilter": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To allow the specification to be used as a facet (filter) on the search navigation bar."
},
"IsOnProductDetails": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal -If specification is visible on the product page."
},
"Position": {
"type": "integer",
"format": "int32",
"description": "Specification field position."
},
"IsWizard": {
"type": "boolean",
"description": "Deprecated field.",
"deprecated": true
},
"IsTopMenuLinkActive": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To make the specification visible in the store's upper menu."
},
"IsSideMenuLinkActive": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To make the specification field clickable in the search navigation bar."
},
"DefaultValue": {
"type": "string",
"nullable": true,
"description": "Specification field default value."
},
"FieldGroupId": {
"type": "integer",
"format": "int32",
"description": "Specification field group ID."
},
"FieldGroupName": {
"type": "string",
"description": "Specification field group name."
}
},
"example": {
"Name": "Material",
"CategoryId": 4,
"FieldId": 88,
"IsActive": true,
"IsRequired": true,
"FieldTypeId": 1,
"FieldValueId": 1,
"IsStockKeepingUnit": false,
"Description": "Composition of the product.",
"IsFilter": true,
"IsOnProductDetails": false,
"Position": 1,
"IsWizard": false,
"IsTopMenuLinkActive": true,
"IsSideMenuLinkActive": true,
"DefaultValue": null,
"FieldGroupId": 20,
"FieldGroupName": "Clothes specifications"
}
},
"SpecificationsInsertFieldUpdateRequest": {
"required": [
"Name",
"CategoryId",
"IsActive",
"FieldId",
"IsRequired",
"FieldTypeId",
"Description",
"IsStockKeepingUnit",
"IsWizard",
"IsFilter",
"IsOnProductDetails",
"Position",
"IsTopMenuLinkActive",
"IsSideMenuLinkActive",
"DefaultValue",
"FieldGroupId",
"FieldGroupName"
],
"type": "object",
"properties": {
"Name": {
"type": "string",
"description": "Specification field ID."
},
"CategoryId": {
"type": "integer",
"nullable": true,
"description": "Category ID."
},
"FieldId": {
"type": "integer",
"nullable": true,
"description": "Specification field ID."
},
"IsActive": {
"type": "boolean",
"description": "Enables(`true`) or disables (`false`) the specification field.",
"example": true
},
"IsRequired": {
"type": "boolean",
"description": "Makes the specification field mandatory (`true`) or optional (`false`)."
},
"FieldTypeId": {
"type": "integer",
"format": "int32",
"description": "Specification field type ID."
},
"FieldValueId": {
"type": "integer",
"nullable": true,
"description": "Specification field value ID."
},
"Description": {
"type": "string",
"nullable": true,
"description": "Specification field description."
},
"IsStockKeepingUnit": {
"type": "boolean",
"description": "If `true`, it will be added as a SKU specification field. If `false`, it will be added as a product specification field."
},
"IsFilter": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To allow the specification to be used as a facet (filter) on the search navigation bar."
},
"IsOnProductDetails": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal -If specification is visible on the product page."
},
"Position": {
"type": "integer",
"format": "int32",
"description": "Specification field position."
},
"IsWizard": {
"type": "boolean",
"description": "Deprecated field.",
"deprecated": true
},
"IsTopMenuLinkActive": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To make the specification visible in the store's upper menu."
},
"IsSideMenuLinkActive": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - To make the specification field clickable in the search navigation bar.",
"example": false
},
"DefaultValue": {
"type": "string",
"nullable": true,
"example": null,
"description": "Specification field default value."
},
"FieldGroupId": {
"type": "integer",
"format": "int32",
"description": "Specification field group ID.",
"example": 1
},
"FieldGroupName": {
"type": "string",
"description": "Specification field group name.",
"example": "Name"
}
}
},
"SpecificationsInsertFieldValueRequest": {
"required": [
"FieldId",
"Name",
"Text",
"IsActive",
"Position"
],
"type": "object",
"properties": {
"FieldId": {
"type": "integer",
"format": "int32",
"description": "Specification field ID."
},
"Name": {
"type": "string",
"description": "Specification field value name."
},
"Text": {
"type": "string",
"description": "Specification field value description."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the specification field value is active (`true`) or inactive (`false`)."
},
"Position": {
"type": "integer",
"format": "int32",
"description": "Specification field value position."
}
},
"example": {
"FieldValueId": 143,
"FieldId": 34,
"Name": "Cotton",
"Text": "Cotton fibers",
"IsActive": true,
"Position": 100
}
},
"SpecificationsUpdateFieldValueRequest": {
"required": [
"FieldId",
"Name",
"Text",
"IsActive",
"Position"
],
"type": "object",
"properties": {
"FieldId": {
"type": "integer",
"nullable": true,
"description": "Specification field ID."
},
"Name": {
"type": "string",
"description": "Specification field value name."
},
"Text": {
"type": "string",
"nullable": true,
"description": "Specification field value description."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the specification field value is active (`true`) or inactive (`false`)."
},
"Position": {
"type": "integer",
"format": "int32",
"description": "Specification field position."
}
},
"example": {
"FieldId": 1,
"FieldValueId": 143,
"Name": "Cotton",
"Text": "Cotton fibers",
"IsActive": true,
"Position": 100
}
},
"SpecificationsGroup": {
"required": [
"CategoryId",
"Id",
"Name",
"Position"
],
"type": "object",
"properties": {
"CategoryId": {
"type": "integer",
"nullable": true,
"description": "Category ID."
},
"Id": {
"type": "integer",
"format": "int32",
"description": "Specification group ID."
},
"Name": {
"type": "string",
"description": "Specification group name."
},
"Position": {
"type": "integer",
"format": "int32",
"nullable": true,
"description": "Specification group position."
}
},
"example": {
"CategoryId": 1,
"Id": 4,
"Name": "Sizes",
"Position": 1
}
},
"SpecificationGroupInsertRequest": {
"required": [
"CategoryId",
"Name"
],
"type": "object",
"properties": {
"CategoryId": {
"type": "integer",
"format": "int32",
"description": "Category ID."
},
"Name": {
"type": "string",
"description": "Specification group name."
}
},
"example": {
"CategoryId": 1,
"Name": "GroupName1"
}
},
"SkuComplement": {
"required": [
"Id",
"SkuId",
"ParentSkuId",
"ComplementTypeId"
],
"type": "array",
"items": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "SKU complement's unique numerical identifier."
},
"SkuId": {
"type": "integer",
"description": "ID of the SKU which will be inserted as a complement in the parent SKU."
},
"ParentSkuId": {
"type": "integer",
"description": "ID of the parent SKU, where the complement will be inserted."
},
"ComplementTypeId": {
"type": "integer",
"description": "Complement type ID. This represents the type of the complement. The possible values are: `1` for **Accessory**; `2` for **Suggestion**; `3` for **Similar product**; `5` for **Show together**.",
"enum": [
1,
2,
3,
4,
5
]
}
}
},
"example": [
{
"Id": 61,
"SkuId": 7,
"ParentSkuId": 1,
"ComplementTypeId": 1
}
]
},
"SkuKit": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "SKU kit ID, same as `StockKeepingUnitParent`."
},
"StockKeepingUnitParent": {
"type": "integer",
"description": "Parent SKU ID."
},
"StockKeepingUnitId": {
"type": "integer",
"description": "SKU ID of the kit component."
},
"Quantity": {
"type": "integer",
"description": "Component quantity."
},
"UnitPrice": {
"type": "integer",
"description": "Component price per unit."
}
},
"example": {
"Id": 7,
"StockKeepingUnitParent": 7,
"StockKeepingUnitId": 1,
"Quantity": 1,
"UnitPrice": 50.0000
}
},
"SKUSpecificationResponse": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "ID of the association of the specification and the SKU. This ID is used to update or delete the specification."
},
"SkuId": {
"type": "integer",
"description": "SKU ID."
},
"FieldId": {
"type": "integer",
"description": "Specification field ID."
},
"FieldValueId": {
"type": "integer",
"description": "Specification value ID. Required only for `FieldTypeId` as `5`, `6` and `7`."
},
"Text": {
"type": "string",
"description": "Value of specification. Only for `FieldTypeId` different from `5`, `6` and `7`."
}
},
"example": {
"Id": 1505,
"SkuId": 1234568387,
"FieldId": 193,
"FieldValueId": 360,
"Text": "Size 10"
}
},
"SKUService": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "SKU service ID.",
"example": 1
},
"SkuServiceTypeId": {
"type": "integer",
"description": "SKU service type ID.",
"example": 1
},
"SkuServiceValueId": {
"type": "integer",
"description": "SKU service value ID.",
"example": 1
},
"SkuId": {
"type": "integer",
"description": "SKU ID.",
"example": 1
},
"Name": {
"type": "string",
"description": "SKU service name. Maximum of 50 characters.",
"example": "Engraving"
},
"Text": {
"type": "string",
"description": "Internal description of the SKU service. Maximum of 100 characters.",
"example": "Name engraving additional service."
},
"IsActive": {
"type": "boolean",
"description": "Defines if the SKU service is active or not.",
"example": true
}
},
"example": {
"Id": 1,
"SkuServiceTypeId": 1,
"SkuServiceValueId": 1,
"SkuId": 1,
"Name": "name",
"Text": "text",
"IsActive": false
}
},
"SKUServiceTypeRequest": {
"type": "object",
"required": [
"Name",
"IsActive",
"ShowOnProductFront",
"ShowOnCartFront",
"ShowOnAttachmentFront",
"ShowOnFileUpload",
"IsGiftCard",
"IsRequired"
],
"properties": {
"Name": {
"type": "string",
"description": "SKU service type name. Maximum of 100 characters.",
"default": "Test API Sku Services"
},
"IsActive": {
"type": "boolean",
"description": "Defines if the SKU service type is active or not.",
"default": true
},
"ShowOnProductFront": {
"type": "boolean",
"description": "Deprecated field.",
"example": false,
"deprecated": true
},
"ShowOnCartFront": {
"type": "boolean",
"description": "Defines if the SKU service type is displayed on the cart screen.",
"example": false
},
"ShowOnAttachmentFront": {
"type": "boolean",
"description": "Defines if the SKU service type has an attachment.",
"example": false
},
"ShowOnFileUpload": {
"type": "boolean",
"description": "Defines if the SKU service type can be associated with an attachment or not.",
"example": false
},
"IsGiftCard": {
"type": "boolean",
"description": "Defines if the SKU service type is displayed as a Gift Card.",
"example": false
},
"IsRequired": {
"type": "boolean",
"description": "Defines if the SKU service type is mandatory.",
"example": false
}
}
},
"SKUServiceTypeResponse": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "SKU service type ID.",
"example": 2
},
"Name": {
"type": "string",
"description": "SKU service type name. Maximum of 100 characters.",
"example": "Test API Sku Services"
},
"IsActive": {
"type": "boolean",
"description": "Defines if the SKU service type is active or not.",
"example": true
},
"ShowOnProductFront": {
"type": "boolean",
"description": "Deprecated field.",
"example": false,
"deprecated": true
},
"ShowOnCartFront": {
"type": "boolean",
"description": "Defines if the SKU service type is displayed on the cart screen.",
"example": false
},
"ShowOnAttachmentFront": {
"type": "boolean",
"description": "Defines if the SKU service type has an attachment.",
"default": false
},
"ShowOnFileUpload": {
"type": "boolean",
"description": "Defines if the SKU service type can be associated with an attachment or not.",
"default": false
},
"IsGiftCard": {
"type": "boolean",
"description": "Defines if the SKU service type is displayed as a Gift Card.",
"default": false
},
"IsRequired": {
"type": "boolean",
"description": "Defines if the SKU service type is mandatory.",
"default": false
}
},
"example": {
"Id": 2,
"Name": "Test API SKU services",
"IsActive": true,
"ShowOnProductFront": true,
"ShowOnCartFront": true,
"ShowOnAttachmentFront": true,
"ShowOnFileUpload": true,
"IsGiftCard": true,
"IsRequired": true
}
},
"SKUServiceValueRequest": {
"type": "object",
"required": [
"SkuServiceTypeId",
"Name",
"Value",
"Cost"
],
"properties": {
"SkuServiceTypeId": {
"type": "integer",
"description": "SKU service type ID.",
"example": 2
},
"Name": {
"type": "string",
"description": "SKU service value name. Maximum of 100 characters.",
"example": "Test ServiceValue API"
},
"Value": {
"type": "number",
"description": "SKU service value value.",
"example": 10.5
},
"Cost": {
"type": "number",
"description": "SKU service value cost.",
"example": 10.5
}
},
"example": {
"SkuServiceTypeId": 2,
"Name": "Test ServiceValue API",
"Value": 10.5,
"Cost": 10.5
}
},
"SKUServiceValueResponse": {
"type": "object",
"required": [
"SkuServiceTypeId",
"Name",
"Value",
"Cost"
],
"properties": {
"Id": {
"type": "integer",
"description": "SKU service value ID.",
"example": 2
},
"SkuServiceTypeId": {
"type": "integer",
"description": "SKU service type ID.",
"example": 2
},
"Name": {
"type": "string",
"description": "SKU service value name. Maximum of 100 characters.",
"example": "Test ServiceValue API"
},
"Value": {
"type": "number",
"description": "SKU service value value.",
"example": 10.5
},
"Cost": {
"type": "number",
"description": "SKU service value cost.",
"example": 10.5
}
},
"example": {
"Id": 2,
"SkuServiceTypeId": 2,
"Name": "Test ServiceValue API",
"Value": 10.5,
"Cost": 10.5
}
},
"BrandCreateUpdate": {
"type": "object",
"description": "Object containing brand information.",
"required": [
"Id",
"Name"
],
"properties": {
"Id": {
"type": "integer",
"description": "Brand's unique numerical identifier.",
"example": 2000003
},
"Name": {
"type": "string",
"description": "Brand name.",
"example": "Adidas"
},
"Text": {
"type": "string",
"description": "Meta description for the brand page. A brief description of the brand, displayed by search engines. Since search engines can only display less than 150 characters, we recommend not exceeding this character limit when creating the description.",
"example": "Adidas"
},
"Keywords": {
"type": "string",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - Alternative search terms that will lead to the specific brand. The user can find the desired brand even when misspelling it. Used especially when words are of foreign origin and have a distinct spelling that is transcribed into a generic one, or when small spelling mistakes occur.",
"example": "adidas"
},
"SiteTitle": {
"type": "string",
"description": "Meta title for the brand page.",
"example": "Adidas"
},
"AdWordsRemarketingCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true
},
"LomadeeCampaignCode": {
"type": "string",
"description": "This is a legacy field. Do not take this information into consideration.",
"deprecated": true
},
"Score": {
"type": "integer",
"description": "Store Framework - Deprecated\r\nLegacy CMS Portal - Value used to set the priority on the search result page.",
"example": 10,
"nullable": true
},
"MenuHome": {
"type": "boolean",
"description": "Store Framework - Deprecated.\r\nLegacy CMS Portal - Defines if the brand appears in the Department Menu control (``).",
"example": true
},
"Active": {
"type": "boolean",
"description": "Defines if the brand is active (`true`) or not (`false`).",
"example": true
},
"LinkId": {
"type": "string",
"description": "Brand page slug. Only lowercase letters and hyphens (`-`) are allowed.",
"example": "adidas-sports",
"nullable": true
}
},
"example": {
"Id": 2000013,
"Name": "Orma Carbono2",
"Text": "Orma Carbon2",
"Keywords": "orma",
"SiteTitle": "Orma Carbon2",
"Active": true,
"MenuHome": true,
"AdWordsRemarketingCode": "",
"LomadeeCampaignCode": "",
"Score": null,
"LinkId": null
}
},
"BrandGet": {
"type": "object",
"description": "Object containing brand information.",
"required": [
"id",
"name",
"isActive",
"imageUrl",
"title",
"metaTagDescription"
],
"properties": {
"id": {
"type": "integer",
"description": "Brand's unique numerical identifier."
},
"name": {
"type": "string",
"description": "Brand name."
},
"isActive": {
"type": "boolean",
"description": "Defines if the brand is active (`true`) or not (`false`)."
},
"title": {
"type": "string",
"description": "Meta title for the brand page."
},
"metaTagDescription": {
"type": "string",
"description": "Meta Description for the brand page. A brief description of the brand, displayed by search engines. Since search engines can only display less than 150 characters, we recommend not exceeding this character limit when creating the description."
},
"imageUrl": {
"type": "string",
"description": "URL of the brand's image.",
"nullable": true
}
}
},
"AttachmentResponse": {
"type": "object",
"required": [
"Id",
"Name",
"IsRequired",
"IsActive",
"Domains"
],
"properties": {
"Id": {
"type": "integer",
"description": "Attachment ID.",
"example": 8
},
"Name": {
"type": "string",
"description": "Attachment name.",
"example": "Shirt customization"
},
"IsRequired": {
"type": "boolean",
"description": "Defines if the attachment is required or not.",
"example": false
},
"IsActive": {
"type": "boolean",
"description": "Defines if the attachment is active or not.",
"example": false
},
"Domains": {
"type": "array",
"description": "List of characteristics related to the attachment.",
"items": {
"type": "object",
"properties": {
"FieldName": {
"type": "string",
"description": "Attachment key name.",
"example": "Number"
},
"MaxCaracters": {
"type": "string",
"description": "Maximum number of characters in the attachment key.",
"example": "1"
},
"DomainValues": {
"type": "string",
"description": "Allowed key values.",
"example": "7,9,10"
}
}
}
}
},
"example": {
"Id": 8,
"Name": "Ingredients",
"IsRequired": true,
"IsActive": true,
"Domains": [
{
"FieldName": "Sauce",
"MaxCaracters": "",
"DomainValues": "[1-2]#9[1-1][1]basic;#11[0-1][1]basic"
},
{
"FieldName": "Toppings",
"MaxCaracters": "",
"DomainValues": "[0-10]#8[0-3][0]medium;#9[0-3][0]medium;#10[0-3][0]medium;#11[0-3][0]medium;#36[0-3][0]medium;#37[0-3][0]medium;#38[0-3][0]medium"
}
]
}
},
"AttachmentRequest": {
"type": "object",
"required": [
"Name",
"IsRequired",
"IsActive",
"Domains"
],
"properties": {
"Name": {
"type": "string",
"description": "Attachment name.",
"example": "Shirt customization"
},
"IsRequired": {
"type": "boolean",
"description": "Defines if the attachment is required or not.",
"example": false
},
"IsActive": {
"type": "boolean",
"description": "Defines if the attachment is active or not.",
"example": false
},
"Domains": {
"type": "array",
"description": "List of characteristics related to the attachment.",
"items": {
"type": "object",
"properties": {
"FieldName": {
"type": "string",
"description": "Attachment key name.",
"example": "Number"
},
"MaxCaracters": {
"type": "string",
"description": "Maximum number of characters in the attachment key.",
"example": "1"
},
"DomainValues": {
"type": "string",
"description": "Allowed key values.",
"example": "7,9,10"
}
}
}
}
},
"example": {
"Name": "Ingredients",
"IsRequired": true,
"IsActive": true,
"Domains": [
{
"FieldName": "Sauce",
"MaxCaracters": "",
"DomainValues": "[1-2]#9[1-1][1]basic;#11[0-1][1]basic"
},
{
"FieldName": "Toppings",
"MaxCaracters": "",
"DomainValues": "[0-10]#8[0-3][0]medium;#9[0-3][0]medium;#10[0-3][0]medium;#11[0-3][0]medium;#36[0-3][0]medium;#37[0-3][0]medium;#38[0-3][0]medium"
}
]
}
},
"SupplierRequest": {
"type": "object",
"required": [
"Name",
"CorporateName",
"StateInscription",
"Cnpj",
"Phone",
"CellPhone",
"CorportePhone",
"Email",
"IsActive"
],
"properties": {
"Name": {
"type": "string",
"description": "Supplier Name.",
"example": "Supplier"
},
"CorporateName": {
"type": "string",
"description": "Supplier Corporate Name.",
"example": "TopStore"
},
"StateInscription": {
"type": "string",
"description": "State Inscription.",
"example": "123456"
},
"Cnpj": {
"type": "string",
"description": "Corporate legal ID.",
"example": "33304981001272"
},
"Phone": {
"type": "string",
"description": "Supplier Phone.",
"example": "3333333333"
},
"CellPhone": {
"type": "string",
"description": "Supplier Cellphone.",
"example": "4444444444"
},
"CorportePhone": {
"type": "string",
"description": "Supplier Corporate Phone.",
"example": "5555555555"
},
"Email": {
"type": "string",
"description": "Supplier email.",
"example": "email@email.com"
},
"IsActive": {
"type": "boolean",
"description": "Defines if the Supplier is active (`true`) or not (`false`).",
"example": false
}
}
},
"SupplierResponse": {
"type": "object",
"properties": {
"Id": {
"type": "integer",
"description": "Supplier unique identifier code.",
"example": 123
},
"Name": {
"type": "string",
"description": "Supplier Name.",
"example": "Supplier"
},
"CorporateName": {
"type": "string",
"description": "Supplier Corporate Name.",
"example": "TopStore"
},
"StateInscription": {
"type": "string",
"description": "State Inscription.",
"example": "123456"
},
"Cnpj": {
"type": "string",
"description": "Corporate legal ID.",
"example": "33304981001272"
},
"Phone": {
"type": "string",
"description": "Supplier Phone.",
"example": "3333333333"
},
"CellPhone": {
"type": "string",
"description": "Supplier Cellphone.",
"example": "4444444444"
},
"CorportePhone": {
"type": "string",
"description": "Supplier Corporate Phone.",
"example": "5555555555"
},
"Email": {
"type": "string",
"description": "Supplier email.",
"example": "email@email.com"
},
"IsActive": {
"type": "boolean",
"description": "Defines if the Supplier is active (`true`) or not (`false`).",
"example": false
}
}
}
}
},
"tags": [
{
"name": "SKU service"
},
{
"name": "SKU service attachment"
},
{
"name": "SKU service value"
},
{
"name": "SKU service type"
},
{
"name": "Category"
},
{
"name": "Brand"
},
{
"name": "Attachment"
},
{
"name": "Product"
},
{
"name": "Product specification"
},
{
"name": "Trade policy"
},
{
"name": "Similar category"
},
{
"name": "SKU"
},
{
"name": "SKU EAN"
},
{
"name": "SKU file"
},
{
"name": "SKU kit"
},
{
"name": "SKU specification"
},
{
"name": "SKU attachment"
},
{
"name": "SKU complement"
},
{
"name": "Non-structured specification"
},
{
"name": "Specification field"
},
{
"name": "Specification group"
},
{
"name": "Specification value"
},
{
"name": "Specification field value"
},
{
"name": "Category specification"
},
{
"name": "Specification"
},
{
"name": "Legacy collection"
},
{
"name": "Legacy subcollection"
},
{
"name": "Collection Beta"
},
{
"name": "Supplier"
},
{
"name": "Sales channel"
},
{
"name": "Seller"
},
{
"name": "SKU seller"
},
{
"name": "Product indexing"
},
{
"name": "Commercial conditions"
},
{
"name": "Gift list"
}
]
}